Sem*_*mas 1 c# object winforms
我想知道如何选择在程序运行时创建的对象.每个对象都有其唯一的名称.我怎么能用它的名字选择那个对象?
示例名称:
"mapPart_0_0"
"mapPart_0_1"
"mapPart_0_2"
等
这是一个Windows窗体项目.在c#中.
创建这些对象:
private void addBoxes()
{
for (int a = 0; a < 25; a++)
{
for (int b = 0; b < 10; b++)
{
MyCustomPictureBox box = new MyCustomPictureBox();
box.Location = new Point(b * 23 + 5, a * 23 + 5);
box.Image = new System.Drawing.Bitmap("tiles/0.png");
box.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
box.Size = new Size(24, 24);
box.Name = "mapPart_" + a + "_" + b;
box.Click += new EventHandler(boxClickAdd);
box.oFile = "0";
panel1.Controls.Add(box);
}
}
}
Run Code Online (Sandbox Code Playgroud)
我建议简单地将对象放在一个System.Collections.Generic.Dictionary<string, your object type>列表中.如果我正确理解了问题,它会提供您正在寻找的确切功能.