命令OnExecuted未调用

时间:2015-07-27 08:10:54

标签: wpf commandbinding

当我右键单击ListView中的某个项目时,将调用事件CommandBinding_CanExecute并显示上下文菜单。但是当我在ListView的空白区域中执行相同操作时,不会触发事件并显示“上下文菜单”但已禁用。

为什么在第二种情况下没有调用CanExecute,并且在ListView的空白区域中单击时是否有任何解决方法来引发此事件。

<Window.Resources>
        <RoutedUICommand x:Key="NewItemCommand" />
    </Window.Resources>
    <Window.CommandBindings>
        <CommandBinding Command="{StaticResource NewItemCommand}" CanExecute="CommandBinding_OnCanExecute" Executed="CommandBinding_OnExecuted" />
    </Window.CommandBindings>
    <Grid>
        <ListView Background="AntiqueWhite" Name="lst">
            <ListView.ContextMenu>
                <ContextMenu>
                    <MenuItem Header="New Item" Command="{StaticResource NewItemCommand}" />
                </ContextMenu>
            </ListView.ContextMenu>
        </ListView>
    </Grid>

0 个答案:

没有答案