我有一个带有包装面板的WPF页面, 一个按钮可在包装面板中生成文本框,其中包含文本 和一个按钮以获取写入文本框的文本。 她是xaml的一部分:
<StackPanel>
<WrapPanel Orientation="Horizontal" x:Name="WP1"
Height="200"/>
<Button Content="Insert" Click="Button_Click" Margin="10"/>
<Button Content="Get_TextBoxes_Text" x:Name="GetTextBoxes_Txt_btn"
Click="GetTextBoxes_Txt_btn_Click" Margin="10"/>
</StackPanel>
现在,当我每次单击第一个按钮时,它都会在包装面板中创建一个带有文本的文本框。假设我在按钮上单击了3次(但可能是1或2或10 ...)。
private void Button_Click(object sender, RoutedEventArgs e)
{
TextBox t = new TextBox()
{
Text = "100",
Padding = new Thickness(3),
BorderBrush = Brushes.Black
};
WP1.Children.Add(t);
// Let's imagine i've clicked 3 times on this button to create 3 textboxes. But the user will be able to click from 1 to 10 times, we don't know at this point.
}
现在,当我单击第二个按钮时,我想以字符串形式连接我们创建的每个文本框文本,例如:
private void GetTextBoxes_Txt_btn_Click(object sender, RoutedEventArgs e)
{
// How to get into a string the content of the 3 textboxes like :
string text = first_TextBox.Text + secondTextBox.Text + thirdTextBox.Text //????
}
但是,这当然不起作用,因为我创建的文本框没有“真实”名称。 我该如何处理? 谢谢您的帮助。
答案 0 :(得分:0)
您可以使用VisualTreeHelper来迭代控件的所有子级。对于每个def intro():
redirect = input("ARE YOU A REGISTERED USER? [Y/N] ")
if redirect == "Y" :
print("OK")
else :
print("gtfo")
intro()
exit = input("press any key to exit")
,您都可以获取并连接此示例文本:
TextBox