C# 铸造管柱+;枚举值到文本框类型

C# 铸造管柱+;枚举值到文本框类型,c#,enums,C#,Enums,我目前在一个表单上有14个文本框(开发完成后将有多达30个)存储在一个数组“textBox”中。每个文本框代表竞争对手在其网站上为特定产品做广告的价格。每个文本框的名称的前缀为“txt”,然后是经销商名称 在我的代码中,有很多对文本框[i].文本、文本框[i].背景色等的操作,以及对相应标签('lbl'+经销商名称)和变量('str'+经销商名称)的操作 我想做的是拥有一个经销商名称的枚举,然后在load表单上将数组分配给,让每个项目对应于枚举中的一个项目 比如: enum Dealers {

我目前在一个表单上有14个文本框(开发完成后将有多达30个)存储在一个数组“textBox”中。每个文本框代表竞争对手在其网站上为特定产品做广告的价格。每个文本框的名称的前缀为“txt”,然后是经销商名称

在我的代码中,有很多对文本框[i].文本、文本框[i].背景色等的操作,以及对相应标签('lbl'+经销商名称)和变量('str'+经销商名称)的操作

我想做的是拥有一个经销商名称的枚举,然后在load表单上将数组分配给,让每个项目对应于枚举中的一个项目

比如:

 enum Dealers { DealerName1, DealerName2, DealerName3, DealerName4 etc..};
 string[] prices = new string[13];
 TextBox[] textBox = new TextBox[13];
 Label[] labels = new Label[13];

 for (int i = 0, i < 14, i++)
 {
      textBox[i] = txt + //Name of dealer at enum position i
      label[i] = lbl + //Name of dealer at enum position i
 }

 //do processing and assign prices variables

 for (int i = 0, i < 14, i++)
 {
      textBox[i].Text = prices[i]
 }
enum交易商{DealerName1、DealerName2、DealerName3、DealerName4等};
字符串[]价格=新字符串[13];
TextBox[]TextBox=新的TextBox[13];
标签[]标签=新标签[13];
对于(int i=0,i<14,i++)
{
textBox[i]=txt+//枚举位置i处的经销商名称
label[i]=lbl+//枚举位置i处的经销商名称
}
//处理并分配价格变量
对于(int i=0,i<14,i++)
{
文本框[i]。文本=价格[i]
}

我的问题是,将枚举中的“txt”和经销商名称连接到相关整数位置,然后使用它分配文本框[i]

的正确语法是什么?您应该使用方法
FindControl(“IDOfControl”)
-这是针对.NETWeb表单的

 for (int i = 0, i < 14, i++)
 {
      textBox[i] = (TextBox)FindControl("txt" + (Dealers)i)
      label[i] = (Label)FindControl("lbl" + (Dealers)i)
 }
for(int i=0,i<14,i++)
{
文本框[i]=(文本框)FindControl(“txt”+(经销商)i)
标签[i]=(标签)FindControl(“lbl”+(经销商)i)
}
编辑:


如果您正在编写winforms,您应该使用
this.Controls.Find(“IDOfYourControl”,true)[0]
而不是
FindControl(“”
方法。

我是否需要引用某个类才能在.net winforms应用程序中使用FindControl方法?谢谢您在问题中指定了它是winforms@TomCarroll好的,获取数组的第一个控件->this.Controls.Find(“IDOfYourControl”,true)[0]是的,这其实很明显!另一方面,你到底是如何在注释中编写代码的