1

我有一个 datagridview 和一个绑定列表。他们一起工作很好,但我想让属性出现在行中,而不是列中。有没有办法做到这一点?我的代码给任何有兴趣的人。

Public Class Form1

Dim listaBindingSource As New BindingList(Of pessoa)

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    Dim b1 As New pessoa()
    listaBindingSource.Add(b1)
    dgv.DataSource = listaBindingSource
End Sub

结束类

Public Class pessoa

Dim sells_Month1 As String

Public Sub New() 'ByVal nome_fora As String)

    sells_Month1 = "0"

End Sub

Property vendas1 As String
    Get
        Return sells_Month1
    End Get
    Set(value As String)
        sells_Month1 = value
    End Set
End Property

其他属性是 vendas2, vendas3.. 和这个相同。

编辑:我有点迷路了。我想要的是让我的对象的属性值出现在某种数据可视化器上。当我在列表中添加新对象时,它们会出现在此数据可视化工具中,当我更改那里的单元格的值时,属性的值也会发生变化。有人有好的建议吗?显然 dgv 不是要走的路。

谢谢,里卡多·S。

4

1 回答 1

1

我想让属性出现在行的标题中,而不是列上。

恐怕这是不可能的,在DataGidView. 您只能在列中显示属性。

要控制列标题中显示的文本,请尝试设置DisplayName属性:

<System.ComponentModel.DisplayName("DisplayedText")>
Property vendas1 As String
    Get
        Return sells_Month1
    End Get
    Set(value As String)
        sells_Month1 = value
    End Set
End Property

或者,如果您导入System.ComponentModel命名空间。

<DisplayName("DisplayedText")>
Property vendas1 As String
    Get
        Return sells_Month1
    End Get
    Set(value As String)
        sells_Month1 = value
    End Set
End Property
于 2013-09-21T17:38:58.247 回答