如何在wpf中listView中的动态生成文本框中设置tabindex

时间:2012-12-31 07:20:02

标签: wpf listview gridview textbox tabindex

我们从XML定义(不是XAML)构建了我们的用户界面,但在下面我们使用WPF来呈现UI。那是在运行时,我们根据XML定义创建WPF UI。

<ListView ItemsSource="{Binding}" Width="400px" IsSynchronizedWithCurrentItem="True" HorizontalAlignment="Left" Name="ListView" 
              ScrollViewer.VerticalScrollBarVisibility="Disabled" ScrollViewer.HorizontalScrollBarVisibility="Disabled"  Grid.ColumnSpan="3" 
              SelectionChanged="ListView_SelectionChanged" BorderThickness="0" IsTabStop="False">

                <ListView.View>
                    <GridView x:Name="grid">
                        <GridViewColumn  Width="100px"> 
                            <GridViewColumn.CellTemplate>
                                <DataTemplate>
                                    <TextBlock Text="{Binding Path=ModuleName}"  Width="100px" Foreground="Black" />
                                </DataTemplate>
                            </GridViewColumn.CellTemplate>
                        </GridViewColumn>
                        <GridViewColumn  Width="200px">
                            <GridViewColumn.CellTemplate>
                                <DataTemplate>
                                    <TextBox Text="{Binding Path=ModuleUserCount, TargetNullValue=''}" MaxLength="6" Name="txtModuleUserCount" KeyDown="txtModuleUserCount_KeyDown" MinWidth="180" MaxWidth="200" BorderBrush="Gray"/>
                                </DataTemplate>
                            </GridViewColumn.CellTemplate>
                        </GridViewColumn>       
                 </ListView.View>
            </ListView>

我通过XML SO UI生成4个模块这些动态TextBox tabIndex中有4个TextBox无效。我试过KeyboardNavigation.TabNavigation="Cycle",但它不起作用。如何使标签导航适用于此布局?

1 个答案:

答案 0 :(得分:0)

我知道太晚了,但我想回答。我有同样的问题。我尝试了以下方式并解决了我的问题:设置:

KeyboardNavigation.TabIndex="10"

ListView本身所需的任何值。