2012-02-20 5 views
1

У меня есть один DataGridView по имени dgv.DataGridView Добавить текстовое поле и разрешить редактирование после привязки

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» быть editable. Предпочтительно, если он может быть вставлен в элемент управления TextBox внутри ячейки.

Я искал и исследовал сам по себе, делая это. Но я не мог найти правильный ресурс.

Любая помощь приветствуется.

ответ

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 текстовое поле будет всплывающее окно на ячейку, поэтому нет необходимости, чтобы сделать свой собственный текстовое поле (если пожалуйста, не забудьте отметить мой ответ как Право 1)

+0

Эй, это действительно работает! Спасибо .. – rofans91

+0

Спасибо, что получил мой голос :) –

Смежные вопросы