我有一堆动态创建的 UI 控件,我想访问特定的控件。
现在,我有一个包含这些控件的数组,但现在我只能使用 myControlArray[i]
,我想制作一个带有标签的数组,比如 myControlArray["nameText"]
,就像DataRow
。
如何创建这样的数组?或者有什么替代方案可以编程吗?
最佳答案
如果您的控件具有不同的名称,则使用 Dictionary<string, Control>
:
var dict = new Dictionary<string, Control>();
dict.Add("yourName", youControl);
var control = dict["yourName"];
如果不能保证您的名字是唯一的,那么您可以使用 Dictionary<string, IList<Control>>
并在同一个名称下拥有多个控件:
var dict = new Dictionary<string, IList<Control>>();
dict.Add("yourName", new List<Control> {yourControl});
dict["yourName"].Add(anotherControl);
var controls = dict["yourName"];
关于C# .NET 如何创建带有标题的数组,如 DataRow?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27450093/