winform:datagrid:怎样禁止追加一行(不想让有*的那一行显示出来)?怎样禁止通过head改变列的宽度?

Baryon 2003-12-25 12:57:19
winform:datagrid:怎样禁止追加一行(不想让有*的那一行显示出来)?怎样禁止通过head改变列的宽度?
...全文
16 10 打赏 收藏 举报
写回复
10 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
pcbabao1 2003-12-28
DataView? 如果用DATATABLE的话,应该用什么办法啊,这个办法不可以的
  • 打赏
  • 举报
回复
canyqf 2003-12-27
sorry,漏掉了.DataSource
CType(datagrid.DataSource,DataView).AllowNew=False
  • 打赏
  • 举报
回复
billfancy 2003-12-26
Private Sub DtgMain_CurrentCellChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DtgMain.CurrentCellChanged
If DtgMain.CurrentCell.RowNumber = dsMdb.Tables(0).Rows.Count Then
DtgMain.CurrentCell = New DataGridCell(dsMdb.Tables(0).Rows.Count - 1, 0)
End If
End Sub
  • 打赏
  • 举报
回复
pcbabao1 2003-12-26
just try
CType(datagrid,DataView).AllowNew=False

可以编辑/删除,不能添加

系统提示:datagrid不能转化为DataView类型
DATAGRID控件本身也没有AllowNew属性

请指点,指点,你写的代码有没有验正以下》
  • 打赏
  • 举报
回复
canyqf 2003-12-25
just try
CType(datagrid,DataView).AllowNew=False

可以编辑/删除,不能添加
  • 打赏
  • 举报
回复
pcbabao1 2003-12-25
如果我我又想可以改动,而有不想增加*行,能不能实现啊?
  • 打赏
  • 举报
回复
dunheng 2003-12-25
不想让系统自动为你添加带*号的那个空行,则更容易,把datagrid的readonly属性设置为true就可以了,当然,前提是你不需要用户对datagrid的数据进行修改。
  • 打赏
  • 举报
回复
dunheng 2003-12-25
想不让用户拖动改变列宽,你可以重写一个datagrid,重写他的onmousedown和onmousemove事件,判断该点击事件的目的是否为改变列宽,如果是的话,不做任何处理退出。代码如下:
Public Class newDataGrid

Inherits DataGrid

Protected Overrides Sub OnMouseMove(ByVal e As System.Windows.Forms.MouseEventArgs)

Dim hti As DataGrid.HitTestInfo = Me.HitTest(New Point(e.X, e.Y))
'如果鼠标事件类型为改变列宽则返回
If hti.Type = DataGrid.HitTestType.ColumnResize Then

Return 'no baseclass call

End If

MyBase.OnMouseMove(e)

End Sub

Protected Overrides Sub onmousedown(ByVal e As System.Windows.Forms.MouseEventArgs)
Dim hti As DataGrid.HitTestInfo = Me.HitTest(New Point(e.X, e.Y))
If hti.Type = DataGrid.HitTestType.ColumnResize Then
Return
End If
Try
MyBase.OnMouseDown(e)
Catch ex As System.NullReferenceException
Exit Sub
End Try
End Sub

End Class
  • 打赏
  • 举报
回复
ahejn 2003-12-25
CType(datagrid,DataView).AllowAddNew=False?
  • 打赏
  • 举报
回复
canyqf 2003-12-25
datagrid设置数据源为DataView,
CType(datagrid,DataView).AllowNew=False
  • 打赏
  • 举报
回复
相关推荐
发帖
VB
加入

1.6w+

社区成员

VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
申请成为版主
帖子事件
创建了帖子
2003-12-25 12:57
社区公告
暂无公告