技巧/诀窍:创建和使用Silverlight 和 WPF 用户控件
2008-09-24 11:33:39 来源:WEB开发网核心提示: 当我们点击F5运行应用时,我们将得到Address数据模型对象与AddressUserControl的自动数据绑定: 因为我们将{Binding}声明设置成了“Mode=TwoWay”,技巧/诀窍:创建和使用Silverlight 和 WPF 用户控件(4),用户在
当我们点击F5运行应用时,我们将得到Address数据模型对象与AddressUserControl的自动数据绑定:
因为我们将{Binding}声明设置成了“Mode=TwoWay”,用户在文本框中做的改动会自动地推送到Address数据模型对象中去(不用写任何代码就可实现)。
例如,我们可以将浏览器中原先的运输地址改成送到迪斯尼:
假如我们在Save按钮的Click事件处理函数中加一个断点,然后点击按钮的话,我们可以看到上面的文本框的变动是如何自动反映到我们的“_shippingAddress”数据模型对象的:
然后我们可以实现 SaveBtn_Click 事件处理函数,将运输和结帐Address数据模型对象按我们的方式持久化,而不用手工获取或对页面上的UI控件做什么操作。
WPF和Silverlight支持的这个干净的视图/模型分离使得后期改动地址用户控件极其容易,且不必更新页面中的任何代码,它还使得轻松地对功能进行单元测试成为可能(请阅读我最新的贴子了解Silverlight单元测试的详情)。
结语
WPF和Silverlight方便你将UI功能封装进控件,它们支持的用户控件机制就提供了一个非常容易的方式。用户控件与数据绑定的结合促成了一些很好的视图/模型分离场景,允许你在操作数据时编写非常干净的代码。
如果你想在自己的机器上运行的话,你可以在这里下载上面例程的完整版本。
想进一步了解Silverlight和WPF的话,请参阅我的Silverlight教程和链接网页。 我还高度推荐Karen Corby在MIX08上做的精彩讲座(讨论了用户控件,自定义控件,样式化,控件模板等),你可以在这里免费在线观看该讲座。
希望本文对你有所帮助,
- ››创建SQL2005自动备份,定期删除的维护计划
- ››创建动态表单 javascript
- ››创建基于PPTP的站点到站点VPN连接:ISA2006系列之...
- ››创建基于L2TP的站点到站点的VPN连接:ISA2006系列...
- ››创建一个Twisted Reactor TCP服务器
- ››创建Windows Mobile上兼容性好的UI 程序
- ››创建android的Service
- ››创建远古部落环境与原住民角色
- ››创建并扩展Apache Wicket Web应用
- ››创建不在任务条中显示窗口按钮的应用
- ››技巧:当不能抛出异常时
- ››创建 Android 文件系统(Root file system)
更多精彩
赞助商链接