我有一个DataGridView
名为 dgv 。
dgv
几乎是一个简单的网格视图。没有有界数据。没有添加任何列。它基本上是空的。
我还有一个DataTable
名为 dt 。
我手动将行和列添加到dt。
dt.Columns.Add(New DataColumn("TexBox", GetType(String)))
dr = dt.NewRow()
dr("TextBox") = String.Empty
dt.Rows.Add(dr)
然后我只需将dgv
数据源设置为dt
。
dgv.DataSource = dt
dgv.Refresh()
然后我设置了这个特定单元格的值。
dgv.Item(0,0).Value = "xxx"
现在我运行并执行所有这些命令。我碰巧检测到了具有该值的gridview。 “xxx”单元格出现,目前无法编辑。
我想要达到的目标是:
允许此“xxx”单元格可编辑。优选地,如果它可以插入细胞内的TextBox
对照中。
我自己用Google搜索并研究过这个问题。然而,我找不到正确的资源。
感谢任何帮助。
答案 0 :(得分:1)
我模拟你的代码,以下工作完美:
Private Sub LoadData()
Try
Dim dt As New DataTable
'Be carefull here because you right it TexBox instead TextBox
dt.Columns.Add(New DataColumn("TextBox", GetType(String)))
Dim dr = dt.NewRow()
dr("TextBox") = String.Empty
dt.Rows.Add(dr)
dgv.DataSource = dt
dgv.Refresh()
dgv.ReadOnly = False
dgv.Columns(0).ReadOnly = False
dgv.Item(0, 0).Value = "xxx"
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
默认情况下,当您在datagridview中编辑单元格时,将在单元格上弹出一个文本框, 所以不需要制作自己的文本框 (如果您愿意,请不要忘记将我的答案称为正确一个)