DataGridView.AutoSizeColumnsMode Свойство

Определение

Возвращает или задает значение, указывающее, как определяется ширина столбца.Gets or sets a value indicating how column widths are determined.

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

Значение свойства

DataGridViewAutoSizeColumnsMode

Значение DataGridViewAutoSizeColumnsMode.A DataGridViewAutoSizeColumnsMode value. Значение по умолчанию — None.The default is None.

Исключения

Указанное при задании этого свойства значение не является допустимым значением DataGridViewAutoSizeColumnsMode.The specified value when setting this property is not a valid DataGridViewAutoSizeColumnsMode value.

Указанное значение при задании этого свойства равно ColumnHeader, заголовки столбцов скрыты, и как минимум один видимый столбец имеет свойство AutoSizeMode со значением NotSet.The specified value when setting this property is ColumnHeader, column headers are hidden, and at least one visible column has an AutoSizeMode property value of NotSet.

-или--or- Указанное значение при задании этого свойства равно Fill, и как минимум один видимый столбец, имеющий свойство AutoSizeMode со значением NotSet, зафиксирован.The specified value when setting this property is Fill and at least one visible column with an AutoSizeMode property value of NotSet is frozen.

Примеры

В следующем примере кода показано, как использовать это свойство в сценарии "основной/подробности", где два DataGridView элемента управления отображают данные из двух таблиц в связи "родители-потомки".The following code example illustrates how to use this property in a master/detail scenario where two DataGridView controls display data from two tables in a parent/child relationship. В этом примере режим изменения размера столбца для главного элемента управления имеет значение None , а ширина столбцов инициализируется программно в соответствии с загруженными значениями.In this example, the column sizing mode for the master control is None, and the column widths are programmatically initialized to fit the loaded values. Для элемента управления подробными данными задан режим автоматического изменения размера столбца, чтобы столбцы автоматически изменялись при изменении значений (например, когда пользователь изменяет текущую строку в родительской таблице).The details control is set to an automatic column sizing mode so that columns will adjust automatically whenever the values change (for example, when the user changes the current row in the parent table). Этот пример является частью большого примера, доступного в разделе как создать форму "основной/подробности" с помощью двух элементов управления Windows Forms DataGridView.This example is part of a larger example available in How to: Create a Master/Detail Form Using Two Windows Forms DataGridView Controls.

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

Комментарии

Это свойство позволяет настроить элемент управления таким образом, чтобы ширина столбцов была автоматически скорректирована либо для заполнения элемента управления, либо для соответствия содержимому ячейки.This property lets you configure the control so that column widths are automatically adjusted either to fill the control or to fit cell contents. Корректировки размера выполняются в режиме заполнения при изменении ширины элемента управления.Size adjustments occur in fill mode whenever the width of the control changes. В режимах изменения размеров на основе содержимого изменения размера происходят при изменении содержимого ячейки или, если WrapMode включен, при изменении высоты строк.In content-based sizing modes, size adjustments occur whenever cell contents change or, if WrapMode is enabled, whenever row heights change. Некоторые режимы изменения размеров на основе содержимого позволяют ограничить корректировку размера для отображаемых в данный момент строк, чтобы повысить производительность.Some content-based sizing modes let you limit the size adjustment to the currently displayed rows in order to increase performance.

Чтобы изменить режим изменения размера для отдельного столбца, установите его AutoSizeMode свойство.To change the sizing mode for an individual column, set its AutoSizeMode property. По умолчанию это свойство имеет значение NotSet , указывающее, что столбец наследует поведение и значение его InheritedAutoSizeMode свойства из элемента управления.The default value of this property is NotSet, indicating that the column inherits its behavior and its InheritedAutoSizeMode property value from the control.

Столбцы в режиме заполнения делят доступную ширину элемента управления по пропорциям, указанным их FillWeight значениями свойств.Columns in fill mode divide the available control width in proportions indicated by their FillWeight property values. Ширина, доступная для режима заливки, определяется путем вычитания ширины всех остальных столбцов из ширины клиентской области элемента управления.The width available for fill mode is determined by subtracting the widths of all other columns from the width of the client area of the control. Если эта ширина меньше, чем Объединенные MinimumWidth значения всех столбцов в режиме заполнения, отображается горизонтальная полоса прокрутки, все столбцы с заполнением отображаются с минимальной шириной, а пользовательское изменение размера столбца отключено.If this width is smaller than the combined MinimumWidth values of all fill-mode columns, the horizontal scroll bar is displayed, all fill-mode columns are shown with their minimum widths, and user column-resizing is disabled. Дополнительные сведения о режиме заполнения столбца см. в разделе режим заполнения столбца в элементе управления Windows Forms DataGridView.For more information about column fill mode, see Column Fill Mode in the Windows Forms DataGridView Control.

VisibleАвтоматически изменяется размер только столбцов со значением свойства true , и изменение видимости столбца не приводит к изменению размера.Only columns with a Visible property value of true are resized automatically, and changing the visibility of a column does not cause resizing to occur. Кроме того, если для столбцов настроено автоматическое изменение размера, пользователь не может изменить ширину столбцов с помощью мыши.Additionally, when columns are set to automatically resize, the user cannot adjust the column widths with the mouse.

Чтобы настроить ширину столбцов программным путем, используйте AutoResizeColumn AutoResizeColumns методы или или задайте свойство Column Width .To adjust column widths programmatically, use the AutoResizeColumn or AutoResizeColumns methods or set the column Width property.

Дополнительные сведения об автоматическом изменении размера на основе содержимого см. в разделе Параметры изменения размера в элементе управления Windows Forms DataGridView.For more information about content-based automatic sizing, see Sizing Options in the Windows Forms DataGridView Control.

Применяется к

См. также раздел