全部,
请帮助我:
我有一个包含自定义控件的表单。
在自定义控件中,我有2个集合引用同一个DataSource来获取数据。
我目前的CodeDOM序列化工具如下:
control1.Values.DataSource = new objA();
control1.CategoryNames.DataSource = new objA();
如您所见,objA被实例化了2次。
如何解决这个问题?
我想我可以声明一个保存对objA的引用的变量,然后将该变量分配给2个集合:
ObjA var = new objA();
control1.Values.DataSource = var;
control1.CategoryNames.DataSource = var;
但我无法确保“var”是一个独特的名称。如何自动为其自动分配Form给我的控件名称(control1,control2等)?
谢谢。
答案 0 :(得分:1)
作为替代方案,您可以将变量命名为guid。它不能保证是唯一的,但它很可能是(特别是如果你的类中没有其他变量被命名为guids)。
您需要对其进行一些过滤才能使其成为有效的变量名称,例如确保以字母开头,并删除破折号。
string variableName = "A" + Guid.NewGuid().ToString().Replace("-","");