スタックパネルに含まれるテキスト ボックスにキーボード フォーカスを設定しようとしています。IsEditMode が true になると、デフォルトでテキスト ボックスがフォーカスされるようになります。
私はこのコードを試しました:
<DataTemplate x:Key="LibraryItemTemplate">
<StackPanel Orientation="Vertical">
<StackPanel.Style>
<Style TargetType="StackPanel">
<Style.Triggers>
<DataTrigger Binding="{Binding IsEditMode}" Value="True">
<Setter Property="FocusManager.FocusedElement" Value="{Binding ElementName=TxtB}"/>
</DataTrigger>
</Style.Triggers>
</Style>
</StackPanel.Style>
<TextBlock x:Name="TxtA" Text="A" />
<TextBox x:Name="TxtB" Text="B" Visibility="{Binding IsEditMode, Converter={StaticResource BoolVisibilityCollapsed}}"/>
</StackPanel>
</DataTemplate>
....
<ListView x:Name="LibraryListView" SelectedItem="{Binding SelectedItem, UpdateSourceTrigger=PropertyChanged}" >
<ListView.View>
<GridView>
<GridViewColumn CellTemplate="{StaticResource LibraryItemTemplate}" Width="Auto"/>
</GridView>
</ListView.View>
しかし、問題は、マウスがマークされていないことです。キーボードのフォーカスがテキストボックスにないようです。テキストボックスにテキストを入力できるようにするには、もう一度マウスでクリックする必要があります。
何か案が?