怎样改变datagrid中的每一条数据的标题头的文字?(WindowForm中)

jin987 2004-06-23 07:55:38
怎样改变datagrid中的每一条数据的标题头的文字?(WindowForm中)
...全文
329 27 打赏 收藏 转发到动态 举报
写回复
用AI写文章
27 条回复
切换为时间正序
请发表友善的回复…
发表回复
dofly 2004-08-29
  • 打赏
  • 举报
回复
改了标题后怎么做才能取出值呀

Private Sub GridList_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles GridList.MouseUp
gsAutoNo = GridList.Item(GridList.CurrentRowIndex, 0) '运行到这里就有错了
End Sub
yingshis 2004-08-26
  • 打赏
  • 举报
回复
up
dofly 2004-08-26
  • 打赏
  • 举报
回复
借楼主宝地一用:

AntingZ(夕惕若):
我用你的方法改标题是顺利的。但是我改了标题后,下面的代码取不出主键值了。不改标题是可用的。
我当时的设想是:点击单元格的时候,全选这一行,然后将这一行的主键值取出来。
帮我指点一下,怎么实现这个功能呀,
Private Sub GridList_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles GridList.MouseUp
'?????取出主键值
GridList.Select(GridList.CurrentRowIndex)
'gsAutoNo = GridList.Item(GridList.CurrentRowIndex, 0) '主键值
End Sub
LiloZhu 2004-08-26
  • 打赏
  • 举报
回复
用sql和datagrid 的樣式表都可以...
AntingZ 2004-06-26
  • 打赏
  • 举报
回复
找不到例子了,自己写了一段简单的,但是还有问题(在datagrid出现滚动条的时候)
你可以自己研究一下,或请其他高手看看!

参考:

Private Sub DataGrid1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles DataGrid1.Paint
Dim i As Integer = 0
Dim strRow As String
Dim yDelta As Integer
yDelta = (DataGrid1.GetCellBounds(0, 0).Height + 1)
Dim x, y As Integer
x = 20
y = (DataGrid1.GetCellBounds(0, 0).Top + 2)
Dim iCount As Integer
'假设你的datagrid1的数据源为datatable
iCount = CType(Me.DataGrid1.DataSource, DataTable).DefaultView.Count
While y < (DataGrid1.Height - yDelta) And i < iCount
strRow = String.Format("第{0}行", i + 1)
e.Graphics.DrawString(strRow, DataGrid1.Font, Brushes.Blue, x, y)
y += yDelta
i += 1
End While
End Sub
zhourixin 2004-06-25
  • 打赏
  • 举报
回复
up
我也想知道如何改变行标题
或者
如何根据记录改行的颜色?
luyin2002 2004-06-25
  • 打赏
  • 举报
回复
我的邮箱: luyin2002@21cn.com
谢谢!
jin987 2004-06-25
  • 打赏
  • 举报
回复
AntingZ(夕惕若)(丢了一杆▄︻┳═一) :

找到没有??
stpangpang 2004-06-24
  • 打赏
  • 举报
回复
如果想方便 ,嘿嘿,直接修改 sql 语句,换成中文列名
miaojx 2004-06-24
  • 打赏
  • 举报
回复
在datagrid绑定的时候,重写dataGrid
jin987 2004-06-24
  • 打赏
  • 举报
回复
AntingZ(夕惕若)(丢了一杆▄︻┳═一) :
你说的用还用加在哪个函数里面吗?我怎么不能改变啊!!!!
lwbmail 2004-06-24
  • 打赏
  • 举报
回复
Me.DataGrid1.Columns(1).HeaderText = "aaaaaa"
AntingZ 2004-06-24
  • 打赏
  • 举报
回复
sorry,看成列标题了,
改变行标题要困难些,没有什么属性是可以直接控制行标题的,只能通过其他变通方法,
我好象有一个这样的例子(要继承datagrid),现在记不清了,
明天找找看(不一定能找到),找到的话,把例子工程发给你!
luyin2002 2004-06-24
  • 打赏
  • 举报
回复
我想问如何改变行标题?你赐教!
luyin2002 2004-06-24
  • 打赏
  • 举报
回复
楼主说的是改变行标题吧?
Relta 2004-06-24
  • 打赏
  • 举报
回复
dim netDs as New DataSet
Dim strFile As String = "e:\test.xml"
If IO.File.Exists(strFile) = True Then
netDs.ReadXml(strFile)
End If
netds.Tables(0).Columns(0).ColumnName="Id"
netds.Tables(0).Columns(1).ColumnName="Name"
netds.Tables(0).Columns(2).ColumnName="Sex"
datagrid1.datasoure=netds.tables(0)
AntingZ 2004-06-24
  • 打赏
  • 举报
回复
顺便说一句改变列的宽度
tc = New DataGridTextBoxColumn
tc.MappingName = "a" '表的字段名
tc.HeaderText = "中文字段" '你想要显示的文字
ts.PreferredColumnWidth = 50
ts.GridColumnStyles.Add(tc)

tc = New DataGridTextBoxColumn
tc.MappingName = "b"
tc.HeaderText = "中文字段1"
ts.PreferredColumnWidth = 200
ts.GridColumnStyles.Add(tc)
AntingZ 2004-06-24
  • 打赏
  • 举报
回复
sorry,少写了一行,这样:

dim ts as new datagridTableStyle
ts.MappingName = "tablename" '你的dataset中的table的name
dim tc as datagridtextboxColumn
...

or:
ts.MappingName=ds.Tables(0).TableName '假设你的数据源是ds的第一个table
AntingZ 2004-06-24
  • 打赏
  • 举报
回复
只要程序能执行的地方都可以
miaojx 2004-06-24
  • 打赏
  • 举报
回复
Private Sub DataBinds(ByVal p_dtTemp As DataTable, ByRef p_grdTemp As DataGrid)
Dim grdTabStyle As New DataGridTableStyle
Dim grdColumnText As DataGridTextBoxColumn
Dim iCount As Integer

grdTabStyle.MappingName = p_dtTemp.TableName
grdTabStyle.AllowSorting = False

'创建自定义的column风格
For iCount = 0 To p_dtTemp.Columns.Count - 1
grdColumnText = New DataGridTextBoxColumn
'绑定行选中事件
AddHandler grdColumnText.TextBox.Enter, New EventHandler(AddressOf TextBoxEnterHandler)
grdColumnText.MappingName = p_dtTemp.Columns(iCount).ColumnName.Trim()
grdColumnText.HeaderText = p_dtTemp.Columns(iCount).ColumnName.Trim()
grdColumnText.Alignment = HorizontalAlignment.Center

grdTabStyle.GridColumnStyles.Add(grdColumnText)
Next

'清除原先的表风格
p_grdTemp.TableStyles.Clear()
'增加自定义的表风格
p_grdTemp.TableStyles.Add(grdTabStyle)
p_grdTemp.TableStyles(0).RowHeadersVisible = False
'禁止列排序
p_grdTemp.TableStyles(0).AllowSorting = False
p_grdTemp.DataSource = p_dtTemp.DefaultView
End Sub
其中参数1是数据源,参数2为datagrid
加载更多回复(7)

16,556

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧