摘要:在一些场景下,我们需要根据条件在画面上动态生成控件。比如某些时候,我们的数据查询条件不是固定的,它需要根据配置文件里面的信息动态生成筛选条件。那么我们就需要在程序运行时先读取配置信息,然后根据配置信息里面的文本条目,在窗体上动态生成CheckBox。勾选Che
在一些场景下,我们需要根据条件在画面上动态生成控件。比如某些时候,我们的数据查询条件不是固定的,它需要根据配置文件里面的信息动态生成筛选条件。那么我们就需要在程序运行时先读取配置信息,然后根据配置信息里面的文本条目,在窗体上动态生成CheckBox。勾选CheckBox则此条件有效,反之则无效。下图演示了配置文件。
下面代码演示了读取配置文件并动态生成CheckBox的过程。
//获取配置文件里面的文本条目var lst= Infrastructure.INIOperationClass.INIGetAllItems(Infrastructure.CommData.ConfigPath, "Area");for(int i = 0; i运行程序,我们可以看到窗体加载后的效果。
当然我们还需要响应CheckBox的选择事件。代码如下。
private void Ce_CheckedChanged(object sender, EventArgse){if (sender is CheckBox){CheckBox chk = sender as CheckBox;if (chk.Checked) MessageBox.Show($"你选择了{chk.Name}");if (!chk.Checked) MessageBox.Show($"你取消了{chk.Name}");}}上面的代码首选判断控件是否为CheckBox,然后根据是否勾选弹出不同的信息。程序运行后勾选或不勾选CheckBox就会弹出对应的窗口。
实际项目会根据具体要求在事件里面编写业务代码,这里仅做演示。动态生成控件的方式会使应用程序的灵活性大大增强。
来源:小方看科技