【发布时间】:2012-09-08 00:47:27
【问题描述】:
尽管搜索了以前提出的相同性质的问题,并找到了很多,但我仍然很难理解为什么这对我不起作用。
我有一个 TreeView -
<Window ... xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity">
<TreeView Name="Folders" ItemsSource="{Binding Directories}">
<i:Interaction.Triggers>
<i:EventTrigger EventName="SelectedItemChanged">
<i:InvokeCommandAction Command="{Binding FolderChangedCommand}" />
</i:EventTrigger>
</i:Interaction.Triggers>
</TreeView>
</Window>
我正在尝试将 SelectedItemChanged 事件绑定到我的 ViewModel 中的命令 -
using Microsoft.Practices.Prism.Commands;
internal class MainVM : VMBase
{
private DelegateCommand FolderChangedCommand { get; set; }
public MainVM()
{
FolderChangedCommand = new DelegateCommand(FolderChanged);
}
private void FolderChanged()
{
// Do Stuff
}
}
然而我的命令从未被触发。我做错了什么?
【问题讨论】:
-
这可能与 FolderChangedCommand 是私有的有关吗?我怀疑它应该是公开的。