TextBox 在属性改变时直接改变模型属性值:
<TextBox ... UpdateSourceTrigger=PropertyChanged></TextBox>
事件(Event)转命令(Command)
1、引入命名空间:
<Windows ... xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity"> ... </Windows>
2、在控件内容中,加入以下代码:
<i:Interaction.Triggers> <i:EventTrigger EventName="ValueChanged"> <i:InvokeCommandAction Command="{Binding GenerateCommand}"></i:InvokeCommandAction> </i:EventTrigger> </i:Interaction.Triggers>
命令延迟执行
1、引入 NewLife.Core 组件。
2、在 ViewModel 中定义执行方法: Execute()
3、声明 TimerX 类型的变量
。_timer
4、初始化 TimerX :
_timer : _timer = new TimerX(obj => { Execute(); }, null, int.MaxValue, int.MaxValue);
5、要执行延时的地方调用: _timer.SetNext(300);
6、参数,300 代表 300 毫秒后执行。
7、如果三百秒之内又有新的调用,则执行会被推迟。