创建自定义datagridrowview

时间:2009-02-18 14:16:02

标签: .net winforms datagridview

我正在尝试创建一个类似于SQL Management Studio中的自定义gridview,用于将字段映射到另一个数据库。 alt text http://img5.imageshack.us/img5/5183/columnmappingsdg5.png

我尝试使用带有控件的自定义单元格视图创建自定义datagridviewrow,而我得到的只是内部的空单元格。

alt text http://img9.imageshack.us/img9/8890/testedexampleeg7.png

有没有人知道如何让这个工作。我看过其他帖子,我不认为它们适用于这种情况。

1 个答案:

答案 0 :(得分:0)

除非我误解了您的问题,否则可以在设计时或运行时轻松完成,但不必添加行,而是必须将定义为具有控件类型的

  • 在设计时,只需将DataGridView控件拖到表单中即可。
  • 右键单击网格,然后单击“添加列”
  • 选择“未绑定列”
  • 在“类型”组合框中,选择列的类型。你可以选择复选框,comobobox,文字,图片......
  • 点击“添加”,根据需要重复。

现在,如果您需要在运行时执行此操作,只需在带有datagridview的表单中执行此类操作:

Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

    'Define the new columns

    Dim colCheck As New DataGridViewCheckBoxColumn
    Dim colText As New DataGridViewTextBoxColumn
    Dim colCombo As New DataGridViewComboBoxColumn

    '...etc, also available are DataGridViewImageColumn, DataGridViewButtonColumn, DataGridViewLinkColumn

    'Change the column properties as you need

    colCheck.HeaderText = "Header Text"
    colCheck.Width = 300

    'Add the columns to the grid 

    Me.DataGridView1.Columns.Add(colCheck)
    Me.DataGridView1.Columns.Add(colText)
    Me.DataGridView1.Columns.Add(colCombo)
End Sub