惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

小众软件
小众软件
博客园_首页
M
MIT News - Artificial intelligence
雷峰网
雷峰网
GbyAI
GbyAI
博客园 - 叶小钗
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
V
V2EX
S
SegmentFault 最新的问题
H
Help Net Security
Apple Machine Learning Research
Apple Machine Learning Research
H
Hackread – Cybersecurity News, Data Breaches, AI and More
博客园 - 【当耐特】
V
Visual Studio Blog
月光博客
月光博客
G
Google Developers Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
腾讯CDC
云风的 BLOG
云风的 BLOG
美团技术团队
Microsoft Azure Blog
Microsoft Azure Blog
A
About on SuperTechFans
有赞技术团队
有赞技术团队

博客园 - jk

我们向IT界贡献了什么? mvc MVVM 用Reflactor的FileGenerator插件反编译代码后 一个动态创建卸载应用程序域的例子 一个自己设计的软件框架 可删除图片小软件 什么是AOP? “长尾理论” 技术在创业团队中的重要性 如何进行成功的创业-程序员创业白皮书 对话周鸿袆:从程序员创业谈起 十个习惯让你精通新的开发技术 精通语言不等于是一个好的软件开发人员 如何从容应对新技术暗潮 Visual Studio2005无法启动web调试的真正原因 互联网给我们了学习和交流的平台 交互界面与输入(2) 交互界面与输入(1)
一个简单的动态加载控件并保存控件信息的框架
jk · 2011-01-11 · via 博客园 - jk

    当前要实现一个很多参数项要设置的界面,不多的模块需要不同个参数设置,考虑到不可能每个参数设置界面都做个配置界面吧,那样就太大工作量太大了,因此决定通过xml文件动态加载控件并布局,然后动态保存实现,这样即使增加一个参数或减少一个参数,一个配置界面都可以统一处理。定制一个接口,这个接口实现值管理和自己状态加载和序列化。如下:

然后通过类继承去实现需要实现的控件,比如Label继承类叫DyLabel,实现如下:

其中的Xml格式如下:

  <DyLabel>

      <Text>用户机ID</Text>

    </DyLabel>

其余依次可以实现所有的控件DyTextBox等。最后用一个用户控件布局配置界面项,一般都是个DyLable和其他控件的组合,实现一个配置项类:DyControl

配置界面通过TableLayout布局,动态解析xml文件,实现保存等。欢迎交流。

/Files/zhugenqiang/TestDyLayOut.rar