用于填充文本块的循环
For loop to Populate Textblocks
我想在一个应用程序中填充 40 个文本块,它们的名称都略有不同,但通常以不同的数字结尾。
我想使用:
for(int i = 1; i < 41; i++)
{
textblock_(i).text = array[i].ToString();
}
可以这样做吗?
谢谢
如果您使用的是 Windows 表单 (WinForms),则:
Control.ControlCollection.Find
示例:
TextBox currentTextBox = this.Controls.Find("textBox1" + i.ToString(), true).FirstOrDefault() as TextBox;
currentTextBox.Text = array[i].ToString();
或者在 WPF 中:How can I find WPF controls by name or type? CrimsonX 的回答
在 WPF 中,您可以使用 FindName 方法。
首先,我们通过FindName(Control's x:Name)得到一个对象。然后将其转换为您的控件类型。就像这样:
for (int i = 1; i < 41; i++)
{
TextBlock tb = (this.FindName(string.Format("textblock_{0}", i)) as TextBlock);
tb.Text = array[i].ToString();
}
我想在一个应用程序中填充 40 个文本块,它们的名称都略有不同,但通常以不同的数字结尾。
我想使用:
for(int i = 1; i < 41; i++)
{
textblock_(i).text = array[i].ToString();
}
可以这样做吗?
谢谢
如果您使用的是 Windows 表单 (WinForms),则: Control.ControlCollection.Find
示例:
TextBox currentTextBox = this.Controls.Find("textBox1" + i.ToString(), true).FirstOrDefault() as TextBox;
currentTextBox.Text = array[i].ToString();
或者在 WPF 中:How can I find WPF controls by name or type? CrimsonX 的回答
在 WPF 中,您可以使用 FindName 方法。
首先,我们通过FindName(Control's x:Name)得到一个对象。然后将其转换为您的控件类型。就像这样:
for (int i = 1; i < 41; i++)
{
TextBlock tb = (this.FindName(string.Format("textblock_{0}", i)) as TextBlock);
tb.Text = array[i].ToString();
}