Поделиться через


ListView.AutoResizeColumn(Int32, ColumnHeaderAutoResizeStyle) Метод

Определение

Изменяет ширину данного столбца в соответствии со стилем изменения размера.

public:
 void AutoResizeColumn(int columnIndex, System::Windows::Forms::ColumnHeaderAutoResizeStyle headerAutoResize);
public void AutoResizeColumn (int columnIndex, System.Windows.Forms.ColumnHeaderAutoResizeStyle headerAutoResize);
member this.AutoResizeColumn : int * System.Windows.Forms.ColumnHeaderAutoResizeStyle -> unit
Public Sub AutoResizeColumn (columnIndex As Integer, headerAutoResize As ColumnHeaderAutoResizeStyle)

Параметры

columnIndex
Int32

Отсчитываемый от нуля индекс столбца, у которого изменяется размер.

headerAutoResize
ColumnHeaderAutoResizeStyle

Одно из значений перечисления ColumnHeaderAutoResizeStyle.

Исключения

Значение columnIndex больше нуля, когда значением свойства Columns является null.

-или-

Значение columnIndex меньше нуля или больше количества заданных столбцов.

Элемент headerAutoResize не является элементом перечисления ColumnHeaderAutoResizeStyle.

Примеры

В следующем примере выполняется инициализация в подробном ListView представлении и автоматическое изменение размера столбцов с помощью AutoResizeColumn метода . Чтобы выполнить этот пример, вставьте этот код в Форму Windows Forms и вызовите InitializeResizingListView метод из конструктора формы или Load обработчика событий.

private ListView resizingListView = new ListView();
private Button button1 = new Button();

private void InitializeResizingListView()
{
    // Set location and text for button.
    button1.Location = new Point(100, 15);
    button1.Text = "Resize";
    button1.Click += new EventHandler(button1_Click);

    // Set the ListView to details view.
    resizingListView.View = View.Details;

    //Set size, location and populate the ListView.
    resizingListView.Size = new Size(200, 100);
    resizingListView.Location = new Point(40, 40);
    resizingListView.Columns.Add("HeaderSize");
    resizingListView.Columns.Add("ColumnContent");
    ListViewItem listItem1 = new ListViewItem("Short");
    ListViewItem listItem2 = new ListViewItem("Tiny");
    listItem1.SubItems.Add(new ListViewItem.ListViewSubItem( 
            listItem1, "Something longer"));
    listItem2.SubItems.Add(new ListViewItem.ListViewSubItem(
        listItem2, "Something even longer"));
    resizingListView.Items.Add(listItem1);
    resizingListView.Items.Add(listItem2);

    // Add the ListView and the Button to the form.
    this.Controls.Add(resizingListView);
    this.Controls.Add(button1);
}

private void button1_Click(object sender, EventArgs e)
{
    resizingListView.AutoResizeColumn(0, 
        ColumnHeaderAutoResizeStyle.HeaderSize);
    resizingListView.AutoResizeColumn(1, 
        ColumnHeaderAutoResizeStyle.ColumnContent);
}
Private resizingListView As New ListView()
Private WithEvents button1 As New Button()


Private Sub InitializeResizingListView()
    ' Set location and text for button.
    button1.Location = New Point(100, 15)
    button1.Text = "Resize"
    AddHandler button1.Click, AddressOf button1_Click

    ' Set the ListView to details view.
    resizingListView.View = View.Details

    'Set size, location and populate the ListView.
    resizingListView.Size = New Size(200, 100)
    resizingListView.Location = New Point(40, 40)
    resizingListView.Columns.Add("HeaderSize")
    resizingListView.Columns.Add("ColumnContent")
    Dim listItem1 As New ListViewItem("Short")
    Dim listItem2 As New ListViewItem("Tiny")
    listItem1.SubItems.Add(New ListViewItem.ListViewSubItem(listItem1, _
        "Something longer"))
    listItem2.SubItems.Add(New ListViewItem.ListViewSubItem(listItem2, _
        "Something even longer"))
    resizingListView.Items.Add(listItem1)
    resizingListView.Items.Add(listItem2)

    ' Add the ListView and the Button to the form.
    Me.Controls.Add(resizingListView)
    Me.Controls.Add(button1)

End Sub


Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs) _
    Handles button1.Click

    ' Resize the first column to the header size.
    resizingListView.AutoResizeColumn(0, _
        ColumnHeaderAutoResizeStyle.HeaderSize)

    ' Resize the second column to the column content.
    resizingListView.AutoResizeColumn(1, _
        ColumnHeaderAutoResizeStyle.ColumnContent)

End Sub

Комментарии

Вызов этого метода действует только после ListView создания ListView и , Form а заголовки и столбцы столбцов заполняются элементами. Если новые элементы добавляются в ListView, размер столбцов не изменится, если AutoResizeColumn не будет вызван еще раз.

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