Шаблон данных столбца шаблона сетки Xam содержит элементы управления, такие как панель стека, сетка и элемент управления, не устанавливающие фокус на элементы управления - PullRequest
0 голосов
/ 06 мая 2020

Я использую Infragistics WPF XamGrid. Я заметил странное поведение с WPF XamGrid TemplateColumn. Когда вы используете templateColumn в Xamgrid и столбец шаблона содержит некоторые элементы управления, такие как сетка, stackpanel и itemcontrol в шаблоне данных, при переходе с предыдущего столбца фокус автоматически не переходит на первый элемент, объявленный в столбце шаблона. Изначально foucs устанавливается на границе столбца шаблона, и когда мы делаем вкладку один раз, фокус переходит на следующий столбец. Любое решение этой проблемы. Как я могу установить фокус на go первый элемент в столбце шаблона xamGrid, когда я вкладываюсь и перемещаюсь по всем элементам, определенным в этом элементе управления. Ниже определен мой код

          <ig:XamGrid  Name="DataGrid" AutoGenerateColumns="False" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" 
                 HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch" Margin="20">
    <ig:XamGrid.Columns>
            <ig:TemplateColumn Key="TeamId" Width="Auto">
                <ig:TemplateColumn.ItemTemplate >
                    <DataTemplate >
                        <TextBox Foreground="Black" Text="{Binding Path=TeamId}" Width="50"/>
                    </DataTemplate>
                </ig:TemplateColumn.ItemTemplate>
                <ig:TemplateColumn.CellStyle>
                    <Style TargetType="{x:Type ig:CellControl}">
                        <Setter Property="IsTabStop" Value="False"></Setter>
                    </Style>
                </ig:TemplateColumn.CellStyle>
            </ig:TemplateColumn>
            <ig:TemplateColumn Key="NameList" Width="Auto" >
                <ig:TemplateColumn.ItemTemplate >
                    <DataTemplate >
                       <Grid>
                            <Grid.RowDefinitions >
                                <RowDefinition/>
                                <RowDefinition/>
                            </Grid.RowDefinitions>
                            <TextBox Grid.Row="0" Foreground="Black" Text="{Binding Path=NameList[0].Name}" Width="100" Margin="2"/>
                            <TextBox Grid.Row="1" Foreground="Black" Text="{Binding Path=NameList[1].Name}" Width="100" Margin="2"/>
                        </Grid>                            
                    </DataTemplate>
                </ig:TemplateColumn.ItemTemplate>
                <ig:TemplateColumn.CellStyle>
                    <Style TargetType="{x:Type ig:CellControl}">
                        <Setter Property="IsTabStop" Value="False"></Setter>
                    </Style>
                </ig:TemplateColumn.CellStyle>
            </ig:TemplateColumn>
            <ig:TemplateColumn Key="TeamName"  Width="Auto">
                <ig:TemplateColumn.ItemTemplate >
                    <DataTemplate >
                        <TextBox Foreground="Black" Text="{Binding Path=TeamName}" Width="100" />
                    </DataTemplate>
                </ig:TemplateColumn.ItemTemplate>
                <ig:TemplateColumn.CellStyle>
                    <Style TargetType="{x:Type ig:CellControl}">
                        <Setter Property="IsTabStop" Value="False"></Setter>
                    </Style>
                </ig:TemplateColumn.CellStyle>
            </ig:TemplateColumn>
        </ig:XamGrid.Columns>
    </ig:XamGrid>
...