DataGridView.AutoSizeColumnsMode Eigenschaft

Definition

Ruft einen Wert ab, der angibt, wie die Spaltenbreite bestimmt wird, oder legt sie fest.

public:
 property System::Windows::Forms::DataGridViewAutoSizeColumnsMode AutoSizeColumnsMode { System::Windows::Forms::DataGridViewAutoSizeColumnsMode get(); void set(System::Windows::Forms::DataGridViewAutoSizeColumnsMode value); };
public System.Windows.Forms.DataGridViewAutoSizeColumnsMode AutoSizeColumnsMode { get; set; }
member this.AutoSizeColumnsMode : System.Windows.Forms.DataGridViewAutoSizeColumnsMode with get, set
Public Property AutoSizeColumnsMode As DataGridViewAutoSizeColumnsMode

Eigenschaftswert

Ein DataGridViewAutoSizeColumnsMode-Wert. Der Standardwert ist None.

Ausnahmen

Der beim Festlegen dieser Eigenschaft angegebene Wert ist kein gültiger DataGridViewAutoSizeColumnsMode-Wert.

Der beim Festlegen dieser Eigenschaft angegebene Wert ist ColumnHeader, Spaltenüberschriften sind ausgeblendet, und mindestens eine sichtbare Spalte verfügt über den AutoSizeMode-Eigenschaftswert NotSet.

- oder -

Der beim Festlegen dieser Eigenschaft angegebene Wert ist Fill, und mindestens eine sichtbare Spalte mit dem AutoSizeMode-Eigenschaftswert NotSet ist eingefroren.

Beispiele

Das folgende Codebeispiel veranschaulicht die Verwendung dieser Eigenschaft in einem Master-/Detailszenario, in dem zwei DataGridView Steuerelemente Daten aus zwei Tabellen in einer übergeordneten/untergeordneten Beziehung anzeigen. In diesem Beispiel ist Noneder Spaltendimensionierungsmodus für das Mastersteuerelement , und die Spaltenbreiten werden programmgesteuert initialisiert, um den geladenen Werten zu entsprechen. Das Detailsteuerelement ist auf einen automatischen Spaltendimensionierungsmodus festgelegt, sodass Spalten automatisch angepasst werden, wenn sich die Werte ändern (z. B. wenn der Benutzer die aktuelle Zeile in der übergeordneten Tabelle ändert). Dieses Beispiel ist Teil eines größeren Beispiels, das unter How to: Create a Master/Detail Form Using Two Windows Forms DataGridView Controls verfügbar ist.

private void Form1_Load(object sender, System.EventArgs e)
{
    // Bind the DataGridView controls to the BindingSource
    // components and load the data from the database.
    masterDataGridView.DataSource = masterBindingSource;
    detailsDataGridView.DataSource = detailsBindingSource;
    GetData();

    // Resize the master DataGridView columns to fit the newly loaded data.
    masterDataGridView.AutoResizeColumns();

    // Configure the details DataGridView so that its columns automatically
    // adjust their widths when the data changes.
    detailsDataGridView.AutoSizeColumnsMode = 
        DataGridViewAutoSizeColumnsMode.AllCells;
}
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) _
    Handles Me.Load

    ' Bind the DataGridView controls to the BindingSource
    ' components and load the data from the database.
    masterDataGridView.DataSource = masterBindingSource
    detailsDataGridView.DataSource = detailsBindingSource
    GetData()

    ' Resize the master DataGridView columns to fit the newly loaded data.
    masterDataGridView.AutoResizeColumns()

    ' Configure the details DataGridView so that its columns automatically
    ' adjust their widths when the data changes.
    detailsDataGridView.AutoSizeColumnsMode = _
        DataGridViewAutoSizeColumnsMode.AllCells

End Sub

Hinweise

Mit dieser Eigenschaft können Sie das Steuerelement so konfigurieren, dass spaltenbreiten automatisch angepasst werden, um entweder das Steuerelement zu füllen oder zellinhaltsabhängig anzupassen. Größenanpassungen werden im Füllmodus immer dann vorgenommen, wenn sich die Breite des Steuerelements ändert. Bei inhaltsbasierten Größenanpassungen werden Größenanpassungen immer dann vorgenommen, wenn sich der Zellinhalt ändert oder, falls WrapMode aktiviert, immer dann, wenn sich die Zeilenhöhe ändert. Mit einigen inhaltsbasierten Größenmodi können Sie die Größenanpassung auf die aktuell angezeigten Zeilen beschränken, um die Leistung zu erhöhen.

Um den Größenmodus für eine einzelne Spalte zu ändern, legen Sie ihre AutoSizeMode Eigenschaft fest. Der Standardwert dieser Eigenschaft ist NotSet, was angibt, dass die Spalte ihr Verhalten und ihren InheritedAutoSizeMode Eigenschaftswert vom Steuerelement erbt.

Spalten im Füllmodus teilen die verfügbare Steuerelementbreite in Proportionen auf, die durch ihre FillWeight Eigenschaftswerte angegeben werden. Die für den Füllmodus verfügbare Breite wird bestimmt, indem die Breiten aller anderen Spalten von der Breite des Clientbereichs des Steuerelements subtrahiert werden. Wenn diese Breite kleiner als die kombinierten MinimumWidth Werte aller Spalten im Füllmodus ist, wird die horizontale Bildlaufleiste angezeigt, alle Füllmodusspalten werden mit ihren Mindestbreiten angezeigt, und die Benutzerspaltenänderung ist deaktiviert. Weitere Informationen zum Spaltenfüllmodus finden Sie unter Spaltenfüllmodus im Windows Forms DataGridView-Steuerelement.

Nur Spalten mit dem Visible Eigenschaftswert von true werden automatisch geändert, und das Ändern der Sichtbarkeit einer Spalte führt nicht dazu, dass die Größe geändert wird. Darüber hinaus kann der Benutzer die Spaltenbreite nicht mit der Maus anpassen, wenn spalten automatisch geändert wird.

Verwenden Sie zum programmgesteuerten Anpassen der Spaltenbreiten die AutoResizeColumn -Methode oder oder AutoResizeColumns legen Sie die Column-Eigenschaft Width fest.

Weitere Informationen zur inhaltsbasierten automatischen Größenanpassung finden Sie unter Größenanpassungsoptionen im Windows Forms DataGridView-Steuerelement.

Gilt für:

Weitere Informationen