【问题标题】:How to disable cell editing in VB.Net data grids?如何在 VB.Net 数据网格中禁用单元格编辑?
【发布时间】:2020-10-28 13:35:02
【问题描述】:

我有一个带有数据网格和文本框的表单。我按如下方式加载数据,我希望完成以下工作。

Private Sub findItem()
    Dim strSql As String

    strSql = "SELECT it_code,It_name FROM tb_items WHERE it_name Like '%" & Trim(txtItemName.Text) & "%'"

    Dim tempItem As DataTable
    tempItem = myTbClass.myFunctionFetchTbData(strSql)

    dgItem.DataSource = Nothing
    dgItem.AutoGenerateColumns = False

    dgItem.ColumnCount = 2

    dgItem.Columns(0).Name = "IT_NAME"
    dgItem.Columns(0).HeaderText = "IT NAME"
    dgItem.Columns(0).DataPropertyName = "it_name"
    dgItem.Columns(0).Width = 350
    dgItem.Columns(0).ReadOnly = True

    dgItem.Columns(1).Name = "IT_CODE"
    dgItem.Columns(1).HeaderText = "IT CODE"
    dgItem.Columns(1).DataPropertyName = "it_code"
    dgItem.Columns(1).Width = 300
    dgItem.Columns(1).ReadOnly = True

    dgItem.DataSource = tempItem

End Sub
  1. 我想禁止用户在单元格内输入。我尝试了以下但没有一个工作。正确的做法是什么?

    DataGridView1.EditMode = DataGridViewEditMode.EditProgrammatically
    dataGridView1.Rows(0).ReadOnly = false
    dataGridView1.Columns(0).ReadOnly = false

【问题讨论】:

  • A DataGridViewDataGridView,而不是数据网格。使用事物的实际名称并不难,并且可以防止人们做出错误的假设而浪费时间。
  • 不要在一个问题中问两个问题。如果您有两个问题,请创建两个问题。然后人们可以独立回答它们,并且您可以接受每个问题的最佳答案。我已经删除了你的第二个问题。

标签: vb.net forms datagrid


【解决方案1】:

如果您希望DataGridView 控件为只读,则将网格的ReadOnly 属性设置为True。将AllowUserToAddRowsAllowUserToDeleteRows 属性设置为False 也可能有意义。

【讨论】:

    猜你喜欢
    • 2016-11-07
    • 2022-12-05
    • 1970-01-01
    • 1970-01-01
    • 2012-05-16
    • 2012-09-23
    • 2013-07-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多