绑定(Event Binding)的实现"/>
Xamarin Forms-通用事件绑定(Event Binding)的实现
Xamarin的Forms的确挺神的,尤其是对已经熟悉WPF和Xaml语法的朋友。在Xamarin Forms里,Xaml还是那熟悉的Xaml(至少大体上是这样的),C#也还是那熟悉的C#,编译出来的东东却是苹果和安卓的App。在第三世界的Windows Phone和Windows Store里待久了,突然挤入了发达国家iOS和安卓的世界,感觉可不要太好了。
言归正传
要说Xaml,大家最喜欢的铁定是它的绑定(Binding)功能。绑定功能实在是太强大,太省心。可绑定的内容多样不说,它可以彻底地实现用户节目层和业务逻辑层的分离,行云流水般地实现了model-view-viewmodel (MVVM)的构架设计。在Xaml的世界里,大伙儿怕是早就忘记了按钮儿还有一个叫Clicked的事件。
诸如这样的代码:
<Button Text="Click me"Clicked="OnButtonClicked" />
或
button.Clicked += OnButtonClicked;
完全不需要!通过绑定按钮儿的命令(Command),如:
Xaml:
<Button Text="Click me"Command="{Binding ButtonClickCommand}" />
配合上相对应的ViewModel:
public class TryEventBindingPageViewModel
{private readonly ICommand _buttonClickCommand = new Command(ButtonClickCommandExecute, CanButtonClickCommandExecute);private void ButtonClickCommandExecute(object args) {// 点击按钮后激活的业务逻辑}private bool CanButtonClickCommandExecute(object args){// 如果返回值为假,按钮被禁用无法点击}
}
>> 参看Xamarin官网上的更多MVVM的介绍
我们不但可以绑定上点击按钮后的逻辑还可以轻易地控制按钮的状态,比如可用(Enabled)和禁用(Disable的ÿ
更多推荐
Xamarin Forms-通用事件绑定(Event Binding)的实现
发布评论