こんにちは、私はMVVMパターンでWindowsストアのアプリケーションで働いています、そして、私はrelayコマンドのlistview itemclick値をキャッチする際にいくつか問題があります。今私はitemclickValueを取得する方法を知らない選択した項目のvalue.Butを持っている。ここで私のコードを添付しています。RelayコマンドでListView ItemClickを取得する方法
XAML
<ListView x:Name="lstItem" ItemTemplate="{StaticResource ItemTemplate}" ItemsSource="{Binding ItemList}" Padding="130,0,0,0" SelectedItem="{Binding SelectedItem,Mode=TwoWay}">
<Triggers:Interactions.Triggers>
<Triggers:EventTrigger EventName="SelectionChanged">
<Triggers:InvokeCommandAction Command="{Binding SelectedItemCommand}" CommandParameter="{Binding SelectedItem,Mode=TwoWay}"/>
</Triggers:EventTrigger>
</Triggers:Interactions.Triggers>
</ListView>
のViewModelコード
private Item _selectedItem;
public Item SelectedItem { get { return _selectedItem; } set { _selectedItem = value; NotifyPropertyChanged("SelectedTrends"); } }
private RelayCommand<Item> _selectedItemCommand;
public RelayCommand<Item> SelectedItemCommand
{
get
{
return this._selectedItemCommand
?? (this._selectedItemCommand= new RelayCommand<Item>(item=>
{
MessageDialog messagedialog = new MessageDialog(item.Name,"Test");
messagedialog.ShowAsync();
}));
}
}
ご回答ありがとうございます。ここでは、SelectionChangedイベントの解決策をご提供しました。しかし、私はItemClickイベントが必要です。 – user1583834
@ user1583834:私は自分の答えを編集しました。これは役に立ちますか? – Marc
ありがとうございます。 – user1583834