我有一个UserControl
,里面有ListView
,并且对应的类为ViewModel。到目前为止,一切都很好-所有数据均已正确显示并可以正常工作。
但是现在我试图添加交互触发器来实现SelectionChanged
功能,并始终获得BindingExpression错误“ SelectionChangedCommand
属性在'object'...上找不到”等。
这种方法有什么问题?
用户控件的XAML在这里:
<ListView x:Name="imgListView" ItemsSource="{Binding ImageList, Mode=OneWay}" Style="{StaticResource ImageItemsListViewStyle}" >
<i:Interaction.Triggers>
<i:EventTrigger EventName="SelectionChanged">
<i:InvokeCommandAction Command="{Binding SelectionChangedCommand}"/>
</i:EventTrigger>
</i:Interaction.Triggers>
</ListView>
ViewModel类包含ICommand定义:
Public ReadOnly SelectionChangedCommand As New RelayCommand(AddressOf SelectionChanged)
(我正在使用GalaSoft.MvvmLight的RelayCommand)。
为验证命令绑定,我还使用VS Blend打开了项目,尝试通过Blend创建绑定。 DataContext正常,并且ViewModel类中的所有其他属性在Blend中可见,但我的SelectionChangedCommand
却不可见!
知道为什么吗?