在我的窗口(假设是MyCanvas)中有一个新的命令定义,然后我将其绑定到我的窗口。通常,CanExecute和Executed的处理程序直接在MyCanvas中。但是,是否可以以某种方式将CanExecute和Executed处理程序绑定到相对路径,例如MyCanvas.Logic.CanExecute_OpenCamera
这是我当前的XAML。
<Window.Resources>
<RoutedUICommand x:Key="OpenCamera" Text="Open camera" />
</Window.Resources>
<Window.CommandBindings>
<CommandBinding Command="{StaticResource OpenCamera}" CanExecute="CanExecute_OpenCamera" Executed="Executed_OpenCamera"/>
</Window.CommandBindings>这就是我想要定义的。逻辑是MyCanvas的公共属性。
<Window.Resources>
<RoutedUICommand x:Key="OpenCamera" Text="Open camera" />
</Window.Resources>
<Window.CommandBindings>
<CommandBinding Command="{StaticResource OpenCamera}" CanExecute="Logic.CanExecute_OpenCamera" Executed="Logic.Executed_OpenCamera"/>
</Window.CommandBindings>发布于 2012-11-20 03:08:47
您可以,但您必须使用转换器,这些转换器从类的绑定对象或其类型创建到相应方法的委托,如果方法是静态的。详情请参见http://wpfglue.wordpress.com/2012/05/07/commanding-binding-controls-to-methods/。
https://stackoverflow.com/questions/13458311
复制相似问题