MVVM パターンを使用して ComponentOne WPF コントロールを使用しています。
ViewModel には次のものがあります。
public ICommand ClientsEnter
{
get
{
if (this.m_ClientsEnter == null)
{
this.m_ClientsEnter = new DelegateCommand<string>(ClientsLostFocusExecute, ClientsLostFocusCanExecute);
}
return m_ClientsEnter;
}
}
そして観察可能なコレクション:
public ObservableCollection<Client> Clients
{
get { return m_Clients; }
set
{
m_Clients = value;
RaisePropertyChanged("Clients");
}
}
Xaml で、ClientName
OrID
を入力して Enter キーを押してイベントを起動し、ClientsEnter
コマンドを実行できる ComponentOne コンボ ボックスを追加しました。
<Custom1:C1ComboBox Grid.Row="2" Grid.Column="1" Height="24" Name="cmbClients" HorizontalAlignment="Left" VerticalAlignment="Center"
ItemsSource="{Binding Clients, Mode=OneWay}" SelectedValuePath="ClientID" DisplayMemberPath="NameE" IsEditable="True"
Text="Enter Client Name Or ID" SelectedValue="{Binding Path=Filter.ClientID, Mode=TwoWay}" MinWidth="150" Margin="0,2" Width="189">
<i:Interaction.Triggers>
<ei:KeyTrigger Key="Tab" FiredOn="KeyUp" ActiveOnFocus="True" SourceName="cmbClients">
<i:InvokeCommandAction Command="{Binding ClientsEnter, Mode=OneWay}" CommandParameter="{Binding Text,ElementName=cmbClients}" CommandName="KeyDown"/>
</ei:KeyTrigger>
</i:Interaction.Triggers>
</Custom1:C1ComboBox>
Enterキーを押した後、なぜ機能しないのかを知る必要がありclientID
ます。消えると何も起こりません。も表示されtext="Enter Client Name Or ID"
ません !何か案は?