C# 检查是否创建了文本框,然后将其指定为';s值
我正在尝试制作一个小应用程序,以便通过WinForms C#更轻松地创建定义(新的web表单aspx) 现在我有了这个表单,我告诉应用程序我要创建多少个文本框 创建文本框后,我想将我编写的文本框值指定给字符串C# 检查是否创建了文本框,然后将其指定为';s值,c#,asp.net,C#,Asp.net,我正在尝试制作一个小应用程序,以便通过WinForms C#更轻松地创建定义(新的web表单aspx) 现在我有了这个表单,我告诉应用程序我要创建多少个文本框 创建文本框后,我想将我编写的文本框值指定给字符串 private void CreateControls() { for (int index = 0; index < NumberOfRows; index++) { TextBox textBox = new
private void CreateControls()
{
for (int index = 0; index < NumberOfRows; index++)
{
TextBox textBox = new TextBox();
textBox.Name = "TextBox" + (index + 1).ToString();
textBox.Size = new Size(120, 20);
textBox.Location = new Point(X, Y + 26);
ComboBox comboBox = new ComboBox();
comboBox.Name = "ComboBox" + (index + 1).ToString();
comboBox.Size = new Size(75, 20);
comboBox.Location = new Point(141, Y + 26);
comboBox.DataSource = Enum.GetNames(typeof(DataTypes));
Y += 26;
this.Controls.Add(textBox);
this.Controls.Add(comboBox);
}
}
private void CreateControls()
{
for(int index=0;index
现在,我不知道如何检查文本框是否已创建,然后获取它们的值
谁能给我介绍一下吗?谢谢:) 您需要在加载页面上找到这些控件并获取它们的值。由于您在创建它们时为它们指定了有意义的名称,因此应该这样做:
for (int index = 0; index < NumberOfRows; index++)
{
TextBox textBox = this.FindControl(
string.Format("TextBox{0}", index)) as TextBox;
if (textBox == null) { continue; } // this means it wasn't found
var text = textBox.Text;
// work with the text
}
我倾向于同意社区的观点,即它可能是一个Windows窗体应用程序,因为您无法设置标准ASP.NET控件的
位置。但是,如果这些控件是支持这些属性并呈现相应CSS的用户控件或第三方控件,那么我们永远不会知道。您提到的webforms。。。但这看起来像WinForms代码。你能澄清一下吗?是的,我认为asp.NET中不存在ComboBox
,我提到了WebForms,因为我用这个WinFormApp创建了它们。请确保你知道WebForms和WinForms之间的区别。你仍然不理解。。。我正在使用WinFormApp创建WebForms。我们仍然不清楚这是winform还是asp.net。你注意到了吗?组合框
,位置
,大小
@SriramSakthivel,是的,我注意到了这个问题,但是对我的代码的一个小小的修改也同样适用于Windows窗体应用程序,你会看到我的编辑解决了这个问题。
if(Page.FindControl("IDofControl") != null)
//exists
else
//does no exists
if(Page.FindControl("IDofControl") != null)
//exists
else
//does no exists