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

推荐订阅源

G
Google Developers Blog
阮一峰的网络日志
阮一峰的网络日志
IT之家
IT之家
人人都是产品经理
人人都是产品经理
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - 【当耐特】
WordPress大学
WordPress大学
Hugging Face - Blog
Hugging Face - Blog
博客园 - 叶小钗
罗磊的独立博客
宝玉的分享
宝玉的分享
月光博客
月光博客
V
V2EX
博客园 - 司徒正美
Vercel News
Vercel News
量子位
Y
Y Combinator Blog
美团技术团队
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
T
Tailwind CSS Blog
博客园 - Franky
小众软件
小众软件
I
InfoQ
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