我的应用程序中有AutoCompleteBox,并且我已经将其ItemSource/SelectedItem属性绑定到ViewModel。
现在我想绑定事件,但是我没有办法用ViewModel绑定AutoCompeletBox键向上/向下事件,我该如何获得它?
我在应用程序中有一个按钮,并且我已经使用RelayCommand绑定了该按钮的命令(它正在工作)。
你能给我一些装订的细节例子吗?
发布于 2011-04-07 12:59:05
如果您使用的是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。
发布于 2011-04-07 16:22:50
KeyUp / KeyDown事件处理应该是视图实现的一部分。然后,您可以在视图中创建逻辑,该逻辑将使用绑定或命令从ViewModel获取自动完成的相关值。
在任何纯粹主义者之前,谁认为所有的逻辑都应该在VM中,谁就开始投反对票。我相信逻辑,那必然是视图应该停留在视图中。
https://stackoverflow.com/questions/5576092
复制相似问题