在StackPanel中的特定图元之后创建一个图元

本文关键字:图元 一个 创建 之后 StackPanel | 更新日期: 2023-09-27 18:29:22

我需要使用代码隐藏在另一个textbox之后立即创建一个XAML textbox。也许是这样的:

之前

<StackPanel>
    <TextBox Name="TextBox1"/>
    <TextBox Name="TextBox2"/>
    <TextBox Name="TextBox3"/>
</StackPanel>

之后

<StackPanel>
    <TextBox Name="TextBox1"/>
    <TextBox Name="TextBox2"/>
    <TextBox Name="InsertedTextBox"/> <!--This textbox was inserted after 'TextBox2'-->
    <TextBox Name="TextBox3"/>
</StackPanel>

我有textbox的名字,我想在后面插入另一个textbox。我可以知道如何在我知道名称的另一个textbox之后插入textbox吗?

注意:我正在为通用Windows编程。

提前谢谢。

在StackPanel中的特定图元之后创建一个图元

您需要命名StackPanel以在代码中引用它,并且您需要前面的TextBox:的索引

var index = this.stackPanel1.Children.IndexOf(TextBox2);
this.stackPanel1.Children.Insert(index + 1, new TextBox { Name = "InsertedTextBox" });

你可以试试这个,注意我已经给StackPanel起了一个名字。

// Where 2 is the index.
this.StackPanel1.Children.Insert(2, new TextBox());