知识大全 VB.NET中关于DataGrid颜色的自定义
Posted 知
篇首语:古之立大事者,不惟有超世之才,亦必有坚忍不拔之志。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 VB.NET中关于DataGrid颜色的自定义相关的知识,希望对你有一定的参考价值。
VB.NET中关于DataGrid颜色的自定义 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
近来项目用到了一个类似WEB控件DataGrid中自定义行或列的颜色的功能 然而应用却是在WIN的窗体下 实现起来无法使用类似JavaScript的脚本注册的功能来动态完成 十分着急 察看了CSDN的一些关于WinForm下的关于DataGrid的资料 看到这样的一篇介绍DG结构的美文 题目是《Henry手记:WinForm Datagrid结构剖析》 作者是韩睿(Latitude) 其中介绍了WIN DG的颜色的定义 但是主要是针对每一个Cell的 我们需要的则是标记某一行的数据 用颜色突出显示 所以作了部分改动 现在把部分代码张贴出来供大家参考 . 基础类出自韩睿 URL: ?id= Public Class DataGridColoredTextBoxColumn Inherits DataGridTextBoxColumn Public rowcollection As New Collection() Public BackColor() As Color Public ForeColor() As Color Private Function GetText(ByVal Value As Object) As String If TypeOf (Value) Is System DBNull Then Return NullText ElseIf Value Is Nothing Then Return Else Return Value ToString End If End Function Protected Overloads Overrides Sub Paint(ByVal g As System Drawing Graphics ByVal bounds As System Drawing Rectangle _ ByVal source As System Windows Forms CurrencyManager _ ByVal rowNum As Integer _ ByVal backBrush As System Drawing Brush _ ByVal foreBrush As System Drawing Brush _ ByVal alignToRight As Boolean) Dim text As String
text = GetText(GetColumnValueAtRow(source rowNum)) backBrush = New SolidBrush(TextBox BackColor) foreBrush = New SolidBrush(TextBox ForeColor)
ReDim Preserve BackColor(rowcollection Count) ReDim Preserve ForeColor(rowcollection Count) Dim i As Integer = Do While (i <= rowcollection Count) If rowNum = Val(rowcollection Item(i)) Then
If Not BackColor(i ) IsEmpty Then backBrush = New SolidBrush(BackColor(i )) End If If Not ForeColor(i ) IsEmpty Then foreBrush = New SolidBrush(ForeColor(i )) End If End If i += Loop MyBase PaintText(g bounds text backBrush foreBrush alignToRight) End Sub End Class 关于行颜色定义的类 Imports System Windows Forms Namespace Truck_WEB Public Class DrawDGClass Public Class ReDrawDataDridControls : Inherits DataGridColoredTextBoxColumn Public Sub DrawCorol(ByRef DG As DataGrid Optional ByVal CurrentRowindex As Integer = ) 设置选中的行的颜色 默认是第一行选中 Dim dt As DataTable Dim ts As New DataGridTableStyle() ts AllowSorting = False Dim aColumnTextColumn As DataGridColoredTextBoxColumn dt = CType(DG DataSource DataTable) ts MappingName = CType(DG DataSource DataTable) TableName DG TableStyles Clear() Dim numCols As Integer numCols = dt Columns Count Dim i j As Integer i = j =
cha138/Article/program/net/201311/12321相关参考
知识大全 ADO在vb.net中的使用(与datagrid结合)
ADO在vb.net中的使用(与datagrid结合) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧
用Vb.net实现自定义界面 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 个人都不希望在别人的身
使用VB.NET开发自定义Windows控件 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一前
知识大全 VB.NET设置屏幕分辨率、颜色位数、刷新率 实例代码
VB.NET设置屏幕分辨率、颜色位数、刷新率实例代码 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
WCF中关于自定义MessageHeader支持 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
字符串的操作应用 [vb] ModuleModule SubMain() 定义个字符串变量 DimstrstrstrAsString 给strstr付初值 str=Hello:str
Asp.NET自定义DataGrid控件 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一&nb
知识大全 为DataGrid自定义分页添加自定义导航和分页信息
为DataGrid自定义分页添加自定义导航和分页信息 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
知识大全 ASP.NET中自定义DataGrid分页设置的实现
ASP.NET中自定义DataGrid分页设置的实现 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
JSP的自定义标签 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一基本概念 标签(Tag):