-1
我有8个图片框,名为p1到p8。通过计算引用C#对象
我想改变其中一个图片框的背景颜色,具体取决于计算结果。
我可以创建一个以字母'p'开头的字符串并将计算出的数字附加到该字符串中。
我正在寻找一个聪明的方式来引用一个图片框与这个字符串(例如“p4”)。我的问题是,这可能吗?
我有8个图片框,名为p1到p8。通过计算引用C#对象
我想改变其中一个图片框的背景颜色,具体取决于计算结果。
我可以创建一个以字母'p'开头的字符串并将计算出的数字附加到该字符串中。
我正在寻找一个聪明的方式来引用一个图片框与这个字符串(例如“p4”)。我的问题是,这可能吗?
如果你真的希望通过像p4
一个字符串,它指给他们,然后把他们的字典
var dict = new Dictionary<string,PictureBox>();
dict.add("p1",myP1dict);
dict.add("p2",myP2dict);
// etc
dict["p2"].BackgroundColor = newColor;
更有可能的是,你可以只是把它们放入数组
var arr = new PictureBox[8]
arr[0] = myPictBox1
arr[1] = myPictBox2
//etc
arr[1].BackgroundColor = newColor;
并通过索引引用它们。
为什么不使用数组或类似的东西? –
而不是按名称搜索使用集合,该集合包含所有图像并通过索引访问它们:'myImages [0] .Colur = ...'。它是什么类型的应用程序? ASP?的WinForms? WPF ...? – HimBromBeere
在WinForms中,你可以通过如下方式访问一个控件:'this.Controls [“p4”]' –