私は WPF DataGrid にひどい問題があります!私は a を a のTextBox
中に入れ、 onDataGridColumnHeader
を変更しました。これが私のスタイルです:KeyBoardLanguage
TextBox_GotFocus
DataGridColumnHeader
<Style x:Key="DataGridSelectorColumnHeaderStyle" TargetType="{x:Type DataGridColumnHeader}" >
<Setter Property="ContentTemplate">
<Setter.Value>
<DataTemplate>
<TextBox xamlservices:GotFocusBehavior.GotFocus="{Binding TextBoxGotFocusCommand}"
xamlservices:GotFocusBehavior.GotFocusParameter="{Binding RelativeSource={RelativeSource Mode=Self}}"/>
</DataTemplate>
</Setter.Value>
</Setter>
</Style>
と:
public ICommand TextBoxGotFocusCommand
{
get { return new RelayCommand<TextBox>(OnTextBoxGotFocus); }
}
TextBox txtSearch;
private void OnTextBoxGotFocus(TextBox sender)
{
txtSearch = sender;
if (...)
{
CultureInfo lanq = new CultureInfo("en-us", false);
InputLanguageManager.SetInputLanguage(txtSearch, lanq);
}
}
問題は、クリックすると言語が変更され、Textbox
他の場所をクリックして元に戻ることTextBox
です。最初のクリックでは言語が変更されません。任意のアイデアをいただければ幸いです。