Share via


DataGrid.AutoGenerateColumns Özellik

Tanım

Sütunların otomatik olarak oluşturulup oluşturulmadığını belirten bir değer alır veya ayarlar.

public:
 property bool AutoGenerateColumns { bool get(); void set(bool value); };
public bool AutoGenerateColumns { get; set; }
member this.AutoGenerateColumns : bool with get, set
Public Property AutoGenerateColumns As Boolean

Özellik Değeri

true sütunlar otomatik olarak oluşturulursa; aksi takdirde , false. Kayıtlı varsayılan değerdir true. Değeri nelerin etkilediği hakkında daha fazla bilgi için bkz DependencyProperty. .

Örnekler

Aşağıdaki örnekte, olay işleyicisinde AutoGeneratingColumn oluşturma zamanında sütunları otomatik olarak oluşturma ve değiştirme işlemleri gösterilmektedir.

<!-- The DataGrid.DataContext is a DataTable that contains a list of customers.  The DataTable columns are  
     Title, FirstName, MiddleName, LastName, Suffix, CompanyName, EmailAddress, and Phone.-->
<DataGrid Name="DG1" ItemsSource="{Binding}" AutoGenerateColumns="True" AutoGeneratingColumn="DG1_AutoGeneratingColumn" />
//Access and update columns during autogeneration
private void DG1_AutoGeneratingColumn(object sender, DataGridAutoGeneratingColumnEventArgs e)
{
    string headername = e.Column.Header.ToString();

    //Cancel the column you don't want to generate
    if (headername == "MiddleName")
    {
        e.Cancel = true;
    }

    //update column details when generating
    if (headername == "FirstName")
    {
        e.Column.Header = "First Name";
    }
    else if (headername == "LastName")
    {
        e.Column.Header = "Last Name";
    }
    else if (headername == "EmailAddress")
    {
        e.Column.Header = "Email";
    }
}
'Access and update columns during autogeneration
Private Sub DG1_AutoGeneratingColumn(ByVal sender As Object, ByVal e As DataGridAutoGeneratingColumnEventArgs)
    Dim headername As String = e.Column.Header.ToString()
    'Cancel the column you don't want to generate
    If headername = "MiddleName" Then
        e.Cancel = True
    End If

    'update column details when generating
    If headername = "FirstName" Then
        e.Column.Header = "First Name"
    ElseIf headername = "LastName" Then
        e.Column.Header = "Last Name"
    ElseIf headername = "EmailAddress" Then
        e.Column.Header = "Email"
    End If
End Sub

Açıklamalar

truefalse ayarı AutoGenerateColumns otomatik olarak oluşturulan sütunları oluşturur veya kaldırır. AutoGenerateColumns özelliği olarak trueAutoGeneratingColumn ayarlandığında, oluşturulan her sütun için olay tetiklenir. Olay işleyicisinde AutoGeneratingColumn oluşturulan sütunu değiştirebilir veya iptal edebilirsiniz.

Tüm sütunların otomatik olarak oluşturulması tamamlandığında, AutoGeneratedColumns olay tetikler.

Not

DataGrid kaynak XML verileri olduğunda sütunları otomatik olarak oluşturamaz. Bu durumda, özel Columns bir koleksiyon oluşturun. Örnek için bkz. DataGridTextColumn

Şunlara uygulanır

Ayrıca bkz.