





















思路:
第一步:将程序按模块划分,提供一个接口给这些模块,模块要实现这个接口,将模块封装成组件。
第二步:将组件名、组件中的成员以及权限信息一起写入XML文件。
第三步:在主程序中读取XML文件并结合用户权限判断,再用反射生成菜单。
下面是小例子
首先定义一个接口,然后封装组件
public interface IMdiFunc
{
void void MdiParentToolBarOnClick(string st);
}
在将菜单信息和功能写入XML文件dymenu.xml
<?xml version="1.0" encoding="utf-8" ?>
<ROOT>
<主菜单>主菜单1
<子菜单>打开窗口1</子菜单>
<菜单DLL>MyForms.dll</菜单DLL>
<菜单Func>OpenForm1</菜单Func>
<菜单Right>A</菜单Right>
<子菜单>打开窗口2</子菜单>
<菜单DLL>MyForms.dll</菜单DLL>
<菜单Func>OpenForm2</菜单Func>
<菜单Right>B</菜单Right>
</主菜单>
<主菜单>主菜单2
<子菜单>打开窗口3</子菜单>
<菜单DLL>MyDlls.dll</菜单DLL>
<菜单Func>OpenForm3</菜单Func>
<菜单Right>C</菜单Right>
</主菜单>
</ROOT>
在主窗体中考虑权限并用反射创建菜单,这里只是模拟权限控制。
主窗体
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。