第一步:首先我用的sql server ,先写脚本(由于第一次用U8,对字段不熟,加上重要字段解释)

sql脚本:
UA_Menu(b表)
DELETE FROM [UFSystem].[dbo].[UA_Menu] WHERE [cMenu_Id]='唯一ID'
INSERT INTO [UFSystem].[dbo].[UA_Menu]
--新增菜单id  |  |新增菜单英文名| 模块标识  |级次     |上级菜单编号   |是否末级    |关联功能   |显示顺序号   ...
([cMenu_Id], [cMenu_Name], [cMenu_Eng],   [cSub_Id],  [IGrade], [cSupMenu_Id],  [bEndGrade], [cAuth_Id], [iOrder],   [iImgIndex], [Paramters], [Depends], [Flag])
VALUES('唯一ID', '新增菜单名',  null,          null,       1,        '父级ID',          1,           NULL,        0,         0,NULL,NULL,NULL)ua_idt(表)
DELETE FROM [UFSystem].[dbo].[ua_idt] where id='AAC'
INSERT INTO [UFSystem].[dbo].[ua_idt]
--唯一编号 | |
([id], [assembly], [catalogtype], [type], [class], [entrypoint], [parameter], [reserved])
VALUES('唯一编号','.dll名字位置',0,2,'类.MyLoginable',null,null,null)

第二步:使用VisualStudio创建项目cheshi.dll

1.添加引用:(可根据我给的路径添加)
U8安装路径\ Interop\Interop.U8Login
U8安装路径\Portal\UFIDA.U8.Portal.Framework.dll
U8安装路径\ Portal \UFIDA.U8.Portal.Proxy.dll
U8安装路径\ Portal \UFIDA.U8.Portal.Common.dll2.继承 NetLoginable,重载SubSysLogin,SubSysLogOff和CallFunction方法
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using UFIDA.U8.Portal.Proxy.editors;
using UFIDA.U8.Portal.Proxy.supports;namespace ceshi
{public class MyLoginable : UFIDA.U8.Portal.Proxy.supports.NetLoginable{public override object CallFunction(string cMenuId, string cMenuName, string cAuthId, string cCmdLine){MyNetUserControl MenuEnt = new MyNetUserControl();Class1.id = cMenuId;    //Class1.id 是我为了传参数创建了一个类,静态字段IDMenuEnt.Title = cMenuName;base.ShowEmbedControl(MenuEnt, cMenuId, true);return null;}public override bool SubSysLogin(){return base.SubSysLogin();}public override bool SubSysLogOff(){return base.SubSysLogin();}}
}3.实现INetUserControl,重载SubSysLogin,SubSysLogOff和CallFunction方法
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using UFIDA.U8.Portal.Framework.Actions;
using UFIDA.U8.Portal.Framework.MainFrames;
using UFIDA.U8.Portal.Proxy.Actions;
using U8Login;
using UFIDA.U8.Portal.Proxy.editors;
using System.Windows.Forms;
using UFSoft.U8.Framework.Login.UI;namespace ceshi
{class MyNetUserControl : INetUserControl{public IEditorInput EditorInput { get; set; }public IEditorPart EditorPart { get; set; }public string Title { get; set; }public Boolean CloseEvent(){return true;}public NetAction[] CreateToolbar(UFSoft.U8.Framework.Login.UI.clsLogin login){return null;}public Control CreateControl(UFSoft.U8.Framework.Login.UI.clsLogin login, string MenuID, string Paramters){U8Login.clsLogin comLogin = new U8Login.clsLoginClass();if (login != null){comLogin.ConstructLogin(login.userToken);}if (Class1.id.Equals("AAB")){//判断点击的是不是id是不是数据库中添加的菜单IDUserControl1 AAB = new UserControl1();return AAB;}return null;}}
}

第三步:部署
将程序集cheshi.dll拷贝到U8安装目录Portal目录下

用友软件(U8)中新增菜单相关推荐

  1. ExtAspNet应用技巧(十七) - 新增菜单

    界面截图 点击"新增菜单",在父页面弹出对话框,选择父菜单为"==根节点==",这里模拟树的下拉列表是不是很酷(这也是ExtAspNet的一个特色): 点击&q ...

  2. 如何在IE右键菜单中添加菜单项(转)

    (来自:http://www.jaron.cn/chs_scripts/7/2003-11/20031125111738-101413.html) 如果使用过Netants的朋友可能都知道,NetAn ...

  3. idea中新增package总是嵌套的解决方法

    idea中新增package总是嵌套的解决方法 参考文章: (1)idea中新增package总是嵌套的解决方法 (2)https://www.cnblogs.com/codething/p/9286 ...

  4. ES6中新增字符串方法,字符串模板

    ES6中新增字符串方法,字符串模板 多了两个新方法 startsWith endsWith 返回的是一个Boolean值 let str='git://www.baidu.com/2123123';i ...

  5. asp.net 2.0中新增的AppendDataBoundItems

    asp.net 2.0中新增的AppendDataBoundItems 在asp.net 2.0中,新增了一个AppendDataBoundItems属性,十分方便,使可以在执行数据绑定之前将项添加到 ...

  6. java中什么表示菜单项_下列类型中,表示菜单项的是( )。_学小易找答案

    [单选题]下列项目属于直接费用的是( ). [单选题]已知立体的三视图,选择正确的立体图 [填空题]气候统计预测,一般分为四步.首先,( );其次,( );再次,( );最后,( ). A 建立统计模 ...

  7. 中的 隐藏鼠标菜单_如何在鼠标右键菜单中添加自定义菜单?工效率提升一倍...

    人都是"懒"的,在使用电脑时,对于常用的操作,步骤太多用久了难免会产生烦躁的情绪,虽然系统已经自带了很多快捷方式,但还是不够用,我们通常都会把常用的东西通过快捷方式来添加到桌面,但 ...

  8. php 微信开发 菜单,微信公众号中个性化菜单的开发实例

    微信公众号中个性化菜单的开发实例 个性化菜单让公众号的不同用户群体看到不一样的自定义菜单.该接口开放给已认证订阅号和已认证服务号,个性化菜单要求用户的微信客户端版本在iPhone6.2.2,Andro ...

  9. ES5中新增的Array方法详细说明

    一.前言-索引 ES5中新增的不少东西,了解之对我们写JavaScript会有不少帮助,比如数组这块,我们可能就不需要去有板有眼地for循环了. ES5中新增了写数组方法,如下: forEach (j ...

最新文章

  1. mysql show processlist info null_关于查询mysql processlist的建议
  2. with dlz mysql 条件_Flask Bind-DLZ + Mysql DNS管理平台
  3. 前端学习(1141):括号总结
  4. 德国软件巨头SAP旗下风投基金募集10亿美元 专门投资科技初创公司
  5. 特征向量的辨析(数学,机器学习)
  6. Redis基础(六)——事务
  7. Ubuntu 14.04安装Chromium浏览器并添加Flash插件Pepper Flash Player-转
  8. php离线地图,如何发布百度离线地图及二次开发API
  9. css之div内部靠右
  10. php 网络爬虫,爬一下花瓣的图片
  11. 通达信画线文件是在服务器吗,通达信画线工具的使用说明★★★★
  12. 汽车驾驶 - 如何调整汽车后视镜
  13. 连接多个内网的方法,想连多少个连多少个
  14. 2022年中职网络空间安全国赛竞赛题解析仅代表自己的建议——2022年中职网络安全国赛竞赛试题2解析
  15. 半丸子头java教程视频教程_半丸子头怎么扎?半丸子头扎发视频教程
  16. 云帆教育大数据分享-Flume-0.9.4源码编译及一些编译出错解决方法
  17. Android混淆心得
  18. JavaScript、Lua语言基础、电脑脚本、手机免ROOT免越狱脚本开发免费视频教程
  19. 2021年Java面试心得:java短信模板设计
  20. 网页中播放RTSP(6) WebRTC播放视频

热门文章

  1. DMO 战队上单选手 Changhong 正式退役,如何评价他的职业生涯?
  2. 【百度之星初赛】 超级赛亚ACMer(灵活题)
  3. 获巴菲特腾讯加持,拉美信用卡大王Nubank 凭啥值400亿美元?
  4. 室内设计优美语句_描述房子室内装潢唯美的句子?
  5. IE8 消息: 未结束的字符串常量
  6. Kali linux 学习笔记(十九)缓冲区溢出——linux(crossfire) 2020.3.1
  7. python采集shipin及评论数据并作自动点赞操作~
  8. Java第二十八天——杂七杂八的流 多线程
  9. cf自动退出服务器,《穿越火线》穿越火线自动退出攻略
  10. 前端Vue使用封装Mock.js和api请求模拟数据案例(带源码)