2011-07-19 10 views
1

我可以將DataContext設置爲任何對象,然後將該對象的屬性綁定到我的控件。如何引用不在代碼後面但在另一個對象中的事件處理程序?

我想用事件處理程序做同樣的事情。我有一類我希望xaml使用的事件處理程序。但是,xaml會在後面的代碼中查找事件處理程序。

<Button Click="OnSearch"/> 

我收到警告,告訴我OnSearch不存在於類後面的代碼中。

  1. 我想要OnSearch在另一個對象。我怎樣才能做到這一點?
  2. 如果我想讓xaml在數據上下文對象中查找事件處理程序,該怎麼辦?

我是新來的WPF,我正在努力學習。我嘗試綁定事件處理程序,但顯然不工作!

回答

5

我認爲爲此應該使用命令而不是事件

您需要定義YourRoutedEventRoutedCommand

派生,它綁定到你的按鈕控制命令。在您的YourRoutedEvent中,您可以在應用程序的不同狀態期間以不同方式實現任何複雜邏輯,這就是您想要的可能性,這就是爲什麼要詢問動態事件綁定的原因。

下面是一個示例鏈接dimonstrates命令結合技術:

Command binding

問候。

+0

是的,命令是要走的路。 – ChrisNel52

+0

謝謝我閱讀了Commands。從來不知道他們到現在爲止! – Yuf

相關問題