私は使用していて、右クリックしたときにMVVM
a を呼び出したいと思います。多くの検索を行いましたが、問題は解決しません。Command
ListView
このXAMLコードを使用します
<ListView ItemsSource="{Binding LibraryList}"
x:Name="MediaList"
Visibility="{Binding MediaListVisibility}"
Margin="149,18,-1,0"
BorderBrush="#FF8BCD7F"
BorderThickness="0"
Background="White">
<i:Interaction.Triggers>
<i:EventTrigger EventName="MouseDoubleClick">
<i:InvokeCommandAction Command="{Binding ChooseMediaCommand}"
CommandParameter="{Binding SelectedValue, ElementName=MediaList}"/>
</i:EventTrigger>
</i:Interaction.Triggers>
<ListView.View>
<GridView>
<GridViewColumn DisplayMemberBinding="{Binding Name}" Header="Name" Width="300" />
<GridViewColumn DisplayMemberBinding="{Binding Time}" Header="Time" Width="70" />
<GridViewColumn DisplayMemberBinding="{Binding Artist}" Header="Artist" Width="120" />
<GridViewColumn DisplayMemberBinding="{Binding Album}" Header="Album" Width="120" />
<GridViewColumn DisplayMemberBinding="{Binding Year}" Header="Year" Width="80" />
</GridView>
</ListView.View>
<ListView.ContextMenu>
<ContextMenu>
<MenuItem Header="Add to playlist" ItemsSource="{Binding PlaylistsList}">
<MenuItem.ItemTemplate>
<DataTemplate>
<MenuItem Header="{Binding Name}"
Command="{Binding AddToPlaylistCommand}"
CommandParameter="{Binding Name}"/>
</DataTemplate>
</MenuItem.ItemTemplate>
</MenuItem>
<MenuItem Header="Remove"/>
</ContextMenu>
</ListView.ContextMenu>
エラーメッセージ :
System.Windows.Data エラー: 40: BindingExpression パス エラー: 'AddToPlaylistCommand' プロパティが 'object' ''Playlist' (HashCode=16901761)' に見つかりません。BindingExpression:Path=AddToPlaylistCommand; DataItem='プレイリスト' (HashCode=16901761); ターゲット要素は 'MenuItem' (Name='') です。ターゲット プロパティは 'Command' (タイプ 'ICommand') です。