猿问

如何使用MVVM在另一个控件之间插入控件?

我想在光标所在的文本框下方插入一个控件:


我在MVVM中有以下代码,该文本框是动态创建的:


<ItemsControl IsTabStop="False" ItemsSource="{Binding ListControls}">

    <ItemsControl.ItemTemplate>

        <DataTemplate>

            <Grid HorizontalAlignment="Stretch">

                <Grid.ColumnDefinitions>

                    <ColumnDefinition Width="50"/>

                    <ColumnDefinition Width="*"/>

                    <ColumnDefinition Width="50"/>

                    <ColumnDefinition Width="*"/>

                    <ColumnDefinition Width="50"/>

                    <ColumnDefinition Width="*"/>

                    <ColumnDefinition Width="50"/>

                    <ColumnDefinition Width="*"/>

                </Grid.ColumnDefinitions>


                <Label Grid.Column="0"  Content="{Binding RGN_INdex}" Margin="5,5,5,5" FontSize="14" VerticalContentAlignment="Center"/>

                <TextBox Style="{StaticResource blankColor}" Text="{Binding RGN}" Grid.Column="1" FontSize="14" VerticalContentAlignment="Center" Margin="0,5,0,5"/>

                <Label Grid.Column="2"  Content="RSN:" Margin="5,5,5,5" FontSize="14" VerticalContentAlignment="Center"/>

                <TextBox Style="{StaticResource blankColor}" Text="{Binding RSN}" Grid.Column="3" FontSize="14" VerticalContentAlignment="Center" Margin="0,5,0,5"/>

                <Label Grid.Column="4"  Content="SGN:" Margin="5,5,5,5" FontSize="14" VerticalContentAlignment="Center"/>

                <TextBox Style="{StaticResource blankColor}" Text="{Binding SGN}" Grid.Column="5" FontSize="14" VerticalContentAlignment="Center" Margin="0,5,0,5"/>

                <Label Grid.Column="6"  Content="SN:" Margin="5,5,0,5" FontSize="14" VerticalContentAlignment="Center"/>


例如,我有两个文本框:


Textbox1 

Textbox2 

当我将光标放在Textbox1并按一个按钮时,这将在列表中添加一个项目。然后,该视图将填充另一个文本框。

在我的XAML中,我拥有RGN_INdex-这将保存创建的控件的索引。


在我的脑海中,我需要获取RGN_INdex光标在控件中的焦点。但是我该怎么办呢?然后将其传递给命令,在RGN_INdex找到的位置之后插入列表中。但是,如何获取RGN_INdex所选文本框的?


我是MVVM的新手,我不知道如何进行这项工作。


幕布斯6054654
浏览 175回答 1
1回答
随时随地看视频慕课网APP
我要回答