首页 | 互联网 | IT动态 | IT培训 | Cisco | Windows | Linux | Java | .Net | Oracle | 软件测试 | C/C++ | 嵌入式开发 | 存储世界 | 服务器
网络设备 | IDC | 安全 | 求职招聘 | 数字网校 | 网页设计 | 平面设计 | 技术专题 | 电子书下载 | 教学视频 | 源码下载 | 搜索 | 博客 | 论坛
中国IT实验室Dotnet频道
中国IT教育
Google
首页 ASP.NET  C#  XML/WebService ADO.NET VC.NET VB.NET .NET 资讯动态 专题 RSS订阅 讨论 下载
您现在的位置: 中国IT实验室 >> Dotnet >> VB.NET >> 正文

使用VB.NET的五个技巧之给控件绑定颜色

  数据绑定能应用于控件的任何属性。我看到过很多人提到能够绑定文本框的背景颜色到数据项,举个例子,超期的帐号的背景色显示红色。

  但是如果你试图使用数据集或者数据表实现该功能,将会遇到问题。数据行只能保持受到限制的数据类型,并且不支持Color类型。如果你不能把颜色存储在数据中怎么能绑定颜色呢?

  有些途径可以解决这个问题,但是最简单的是用绑定到自定义数据对象代替绑定到数据表。自定义业务对象的属性可能是Color型的,这样的属性能绑定到控件的BackColor属性。

  为了演示,我定义了下面的自定义事务对象:

Public Class Account

Dim m_nAccountID As Integer
Dim m_sCustomerName As String
Dim m_dblBalance As Double

Public Sub New(ByVal nAccountID As Integer, ByVal sCustomerName As 
String, _ByVal dblBalance As Double) Me.AccountID = nAccountID Me.CustomerName = sCustomerName Me.Balance = dblBalance End Sub Public Property AccountID() As Integer Get Return m_nAccountID End Get Set(ByVal Value As Integer) m_nAccountID = Value End Set End Property Public Property CustomerName() As String Get Return m_sCustomerName End Get Set(ByVal Value As String) m_sCustomerName = Value End Set End Property Public Property Balance() As Double Get Return m_dblBalance End Get Set(ByVal Value As Double) m_dblBalance = Value End Set End Property Public ReadOnly Property BackColor() As Color Get If m_dblBalance < 0 Then Return Color.Salmon Else Return SystemColors.Window End If End Get End Property End Class

  注意只读的BackColor属性从Balance属性中得到值,并且为负平衡(negative balance)暴露了一个不同的颜色。该类的其它元素很直接。

  现在我们建立一个界面来操作这些对象的集合(见图5)。

  

  图5.演示背景颜色绑定的窗体(设计时)

[1] [2] 下一页

【责编:John】

中国IT教育

相关产品和培训
文章评论
 友情推荐链接
 认证培训
 社区讨论
 博客论点
 Dotnet频道相关导航