在我的窗口內(假設MyCanvas
)有一個新的命令定義,然後綁定到我的窗口。通常,CanExecute
和Executed的處理程序直接在MyCanvas
之內。但是,是否有可能將CanExecute
和Executed
處理程序綁定到相對路徑,例如MyCanvas.Logic.CanExecute_OpenCamera
?CommandBinding相對路徑
這是我目前的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>
相對路徑?你的意思是像一個NameSpace? – Boomer
是的,不知何故。命令回調是在我使用的窗口中定義的。 – Matthias
你不能這樣做,因爲CanExecute和Execute是事件。 –