首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将UI控件事件绑定到ViewModel?

如何将UI控件事件绑定到ViewModel?
EN

Stack Overflow用户
提问于 2011-04-07 12:44:14
回答 2查看 930关注 0票数 0

我的应用程序中有AutoCompleteBox,并且我已经将其ItemSource/SelectedItem属性绑定到ViewModel。

现在我想绑定事件,但是我没有办法用ViewModel绑定AutoCompeletBox键向上/向下事件,我该如何获得它?

我在应用程序中有一个按钮,并且我已经使用RelayCommand绑定了该按钮的命令(它正在工作)。

你能给我一些装订的细节例子吗?

EN

回答 2

Stack Overflow用户

发布于 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属性更改为“属性已更改”

代码语言:javascript
运行
复制
Text="{Binding SearchText, UpdateSourceTrigger=PropertyChanged}"

默认的绑定行为是在LostFocus上,因此这将立即更新您的ViewModel。

票数 1
EN

Stack Overflow用户

发布于 2011-04-07 16:22:50

KeyUp / KeyDown事件处理应该是视图实现的一部分。然后,您可以在视图中创建逻辑,该逻辑将使用绑定或命令从ViewModel获取自动完成的相关值。

在任何纯粹主义者之前,谁认为所有的逻辑都应该在VM中,谁就开始投反对票。我相信逻辑,那必然是视图应该停留在视图中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5576092

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档