Maj*_*cRa 5 c# configuration uid winforms
我们有什么
我们有一些复杂的winforms控制.要存储其状态,我们使用一些自定义序列化类.让我们说我们已经将它序列化为xml.现在我们可以将这个xml保存为用户目录中的文件或将其包含在另一个文件中......
但是......
问题是,
如果用户在他的winform应用程序中创建了几个这样的控件(在设计时),最好使用哪个唯一标识符来了解哪些已保存的配置属于哪些控件?
所以这个标识符应该:
我想可以想象一下这样做的几种方法,我相信可能会有一些默认的方法.
有什么好用的?为什么?
这个小扩展方法可以完成以下工作:
public static class FormGetUniqueNameExtention
{
public static string GetFullName(this Control control)
{
if(control.Parent == null) return control.Name;
return control.Parent.GetFullName() + "." + control.Name;
}
}
Run Code Online (Sandbox Code Playgroud)
它返回类似“Form1._flowLayoutPanel.label1”的内容
用法:
Control aaa;
Dictionary<string, ControlConfigs> configs;
...
configs[aaa.GetFullName()] = uniqueAaaConfig;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1918 次 |
| 最近记录: |