2011-04-07 90 views
0

我在我的應用程序中有AutoCompleteBox,並將其ItemSource/SelectedItem屬性綁定到ViewModel。如何將UI控件事件綁定到ViewModel(MVVM)?

現在我想綁定事件,我沒有得到方法來綁定AutoCompeletBox KeyUP/KeyDown事件與ViewModel我如何實現它?

我在應用程序中有一個按鈕,並且我使用了RelayCommand來綁定該按鈕的命令(它正在工作)。

你能否給我詳細的綁定的例子?

回答

1

如果您使用的是GalaSoft MVVM工具包,則可以使用EventToCommand將KeyUp事件綁定到命令。看看這裏 - http://geekswithblogs.net/lbugnion/archive/2009/11/05/mvvm-light-toolkit-v3-alpha-2-eventtocommand-behavior.aspx

你也可能要更改自動完成框的綁定表達式的UpdateSourceTrigger屬性爲「屬性更改」

Text="{Binding SearchText, UpdateSourceTrigger=PropertyChanged}" 

默認綁定行爲是引發LostFocus,所以這會立即更新您的ViewModel。

+0

嗨NJerbert我沒有使用任何工具包。 – PramodChoudhari 2011-04-07 05:07:05

+0

你可以用任何來源更新你的問題,以幫助進一步說明你正試圖將事件綁定到什麼? – njebert 2011-04-07 05:10:29

0

KeyUp/KeyDown事件處理應該是View實現的一部分。然後,您可以在View中創建邏輯,它將使用綁定或命令從ViewModel或從ViewModel獲取與自動完成相關的值。

在任何純粹主義者之前,誰認爲所有的邏輯都應該在虛擬機中開始downvoting。我相信邏輯,這是必須停留在視圖。

相關問題