다음을 통해 공유


DataGridViewColumn.DataPropertyName 속성

정의

DataGridViewColumn이 바인딩되는 데이터베이스 열이나 데이터 소스 속성의 이름을 가져오거나 설정합니다.

public:
 property System::String ^ DataPropertyName { System::String ^ get(); void set(System::String ^ value); };
[System.ComponentModel.Browsable(true)]
[System.ComponentModel.TypeConverter("System.Windows.Forms.Design.DataMemberFieldConverter, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public string DataPropertyName { get; set; }
[System.ComponentModel.Browsable(true)]
[System.ComponentModel.TypeConverter("System.Windows.Forms.Design.DataMemberFieldConverter, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public string DataPropertyName { get; set; }
[System.ComponentModel.Browsable(true)]
[System.ComponentModel.TypeConverter("System.Windows.Forms.Design.DataMemberFieldConverter, System.Windows.Forms.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public string DataPropertyName { get; set; }
[<System.ComponentModel.Browsable(true)>]
[<System.ComponentModel.TypeConverter("System.Windows.Forms.Design.DataMemberFieldConverter, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")>]
member this.DataPropertyName : string with get, set
[<System.ComponentModel.Browsable(true)>]
[<System.ComponentModel.TypeConverter("System.Windows.Forms.Design.DataMemberFieldConverter, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")>]
member this.DataPropertyName : string with get, set
[<System.ComponentModel.Browsable(true)>]
[<System.ComponentModel.TypeConverter("System.Windows.Forms.Design.DataMemberFieldConverter, System.Windows.Forms.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")>]
member this.DataPropertyName : string with get, set
Public Property DataPropertyName As String

속성 값

String

DataGridViewColumn과 연결된 데이터베이스 열이나 속성의 이름(대/소문자를 구분하지 않음)입니다.

특성

예제

다음 코드 예제에서는 각 열이 나타낼 속성을 선택하는 방법을 보여 있습니다.

public enum Title
{
    King,
    Sir
};
Public Enum Title
    King
    Sir
End Enum
private void EnumsAndComboBox_Load(object sender, System.EventArgs e)
{
    // Populate the data source.
    bindingSource1.Add(new Knight(Title.King, "Uther", true));
    bindingSource1.Add(new Knight(Title.King, "Arthur", true));
    bindingSource1.Add(new Knight(Title.Sir, "Mordred", false));
    bindingSource1.Add(new Knight(Title.Sir, "Gawain", true));
    bindingSource1.Add(new Knight(Title.Sir, "Galahad", true));

    // Initialize the DataGridView.
    dataGridView1.AutoGenerateColumns = false;
    dataGridView1.AutoSize = true;
    dataGridView1.DataSource = bindingSource1;

    dataGridView1.Columns.Add(CreateComboBoxWithEnums());

    // Initialize and add a text box column.
    DataGridViewColumn column = new DataGridViewTextBoxColumn();
    column.DataPropertyName = "Name";
    column.Name = "Knight";
    dataGridView1.Columns.Add(column);

    // Initialize and add a check box column.
    column = new DataGridViewCheckBoxColumn();
    column.DataPropertyName = "GoodGuy";
    column.Name = "Good";
    dataGridView1.Columns.Add(column);

    // Initialize the form.
    this.Controls.Add(dataGridView1);
    this.AutoSize = true;
    this.Text = "DataGridView object binding demo";
}

DataGridViewComboBoxColumn CreateComboBoxWithEnums()
{
    DataGridViewComboBoxColumn combo = new DataGridViewComboBoxColumn();
    combo.DataSource = Enum.GetValues(typeof(Title));
    combo.DataPropertyName = "Title";
    combo.Name = "Title";
    return combo;
}
#region "business object"
private class Knight
{
    private string hisName;
    private bool good;
    private Title hisTitle;

    public Knight(Title title, string name, bool good)
    {
        hisTitle = title;
        hisName = name;
        this.good = good;
    }

    public Knight()
    {
        hisTitle = Title.Sir;
        hisName = "<enter name>";
        good = true;
    }

    public string Name
    {
        get
        {
            return hisName;
        }

        set
        {
            hisName = value;
        }
    }

    public bool GoodGuy
    {
        get
        {
            return good;
        }
        set
        {
            good = value;
        }
    }

    public Title Title
    {
        get
        {
            return hisTitle;
        }
        set
        {
            hisTitle = value;
        }
    }
}
#endregion
    Private Sub SetupGrid()
        knights = New List(Of Knight)
        knights.Add(New Knight(Title.King, "Uther", True))
        knights.Add(New Knight(Title.King, "Arthur", True))
        knights.Add(New Knight(Title.Sir, "Mordred", False))
        knights.Add(New Knight(Title.Sir, "Gawain", True))
        knights.Add(New Knight(Title.Sir, "Galahad", True))

        ' Initialize the DataGridView.
        dataGridView1.AutoGenerateColumns = False
        dataGridView1.AutoSize = True
        dataGridView1.DataSource = knights

        dataGridView1.Columns.Add(CreateComboBoxWithEnums())

        ' Initialize and add a text box column.
        Dim column As DataGridViewColumn = _
            New DataGridViewTextBoxColumn()
        column.DataPropertyName = "Name"
        column.Name = "Knight"
        dataGridView1.Columns.Add(column)

        ' Initialize and add a check box column.
        column = New DataGridViewCheckBoxColumn()
        column.DataPropertyName = "GoodGuy"
        column.Name = "Good"
        dataGridView1.Columns.Add(column)

        ' Initialize the form.
        Controls.Add(dataGridView1)
        Me.AutoSize = True
        Me.Text = "DataGridView object binding demo"
    End Sub

    Private Function CreateComboBoxWithEnums() As DataGridViewComboBoxColumn
        Dim combo As New DataGridViewComboBoxColumn()
        combo.DataSource = [Enum].GetValues(GetType(Title))
        combo.DataPropertyName = "Title"
        combo.Name = "Title"
        Return combo
    End Function

#Region "business object"
    Private Class Knight
        Private hisName As String
        Private good As Boolean
        Private hisTitle As Title

        Public Sub New(ByVal title As Title, ByVal name As String, _
            ByVal good As Boolean)

            hisTitle = title
            hisName = name
            Me.good = good
        End Sub

        Public Property Name() As String
            Get
                Return hisName
            End Get

            Set(ByVal Value As String)
                hisName = Value
            End Set
        End Property

        Public Property GoodGuy() As Boolean
            Get
                Return good
            End Get
            Set(ByVal Value As Boolean)
                good = Value
            End Set
        End Property

        Public Property Title() As Title
            Get
                Return hisTitle
            End Get
            Set(ByVal Value As Title)
                hisTitle = Value
            End Set
        End Property
    End Class
#End Region

설명

속성이 AutoGenerateColumns 설정true되면 각 열은 해당 속성을 속성으로 지정된 DataSource 데이터 원본의 속성 또는 데이터베이스 열 이름으로 자동으로 설정합니다DataPropertyName. 이 바인딩은 수동으로 수행할 수도 있습니다. 이는 데이터 원본에서 사용할 수 있는 속성 또는 데이터베이스 열의 하위 집합만 표시하려는 경우에 유용합니다. 이러한 경우 속성을 falseAutoGenerateColumns로 설정한 다음 각 DataGridViewColumn속성을 수동으로 추가하여 표시하려는 데이터 원본의 속성 또는 데이터베이스 열에 각 DataPropertyName 속성의 값을 설정합니다.

적용 대상

추가 정보