SmartBinding与kbmMW#1
即将发布的kbmMW,实现了SmartBinding,SmartBinding的设计目标是:
- 必须易于使用
- 必须最小化或完全删除锅炉板代码。
(你看到这里的趋势了吗?... kbmMW从那时开始就是为了让事情变得简单!) - 必须有良好的表现
- 必须具有较低的CPU,内存和大小
- 绝不能导致无休止的圆形赛事列车
- 应该使用各种数据和控件
- 应该是灵活和可扩展的
- 必须接近实时
- 必须易于重构
- 应该与kbmMW的其他功能很好地配合
- 即使不使用kbmMW的其他功能也应该可用
看一个简单的属性绑定:
SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。
Binding.Bind(Edit1,'Text',Label1,'Caption'); Binding.Bind(Edit1,'Text',Button1,'Caption'); Binding.Bind(Edit1,'Text',Edit2,'Text',[mwboTwoWay]);
上面代码,实现了在Edit1(TEdit)中输入内容并将其反映在Edit2(TEdit),Button1和Label1中,在Edit2中输入内容并将其反映在Edit1中。
Binding实例来自哪里?他是kbmMW SmartBinding默认带的一个实例,可以立即使用。代码的最后一行还包括一个可选标志,表示绑定是两种方式,更改一方也会自动更新另一方。
基本上所有字符串,布尔值,浮点,int64和整数属性都可以通过自动转换轻松绑定,其中SmartBinding确保根据需要自动在不同类型之间转换数据。其他类型的数据也可以绑定,但源和目标属性必须是相同的类型(也有方法也可以...见后面)。
线程安全方面是什么情况呢?kbmMW SmartBinding自动识别从TControl类的继承的组件,它必须在主应用程序线程进行更新才保证应用程序稳定运行。

更多精彩