DataGridView.RowHeadersWidth DataGridView.RowHeadersWidth DataGridView.RowHeadersWidth DataGridView.RowHeadersWidth Property

Определение

Возвращает или задает ширину (в пикселях) столбца, содержащего заголовки строк.Gets or sets the width, in pixels, of the column that contains the row headers.

public:
 property int RowHeadersWidth { int get(); void set(int value); };
public int RowHeadersWidth { get; set; }
member this.RowHeadersWidth : int with get, set
Public Property RowHeadersWidth As Integer

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

Ширина (в пикселях) столбца, содержащего заголовки строк.The width, in pixels, of the column that contains row headers. Значение по умолчанию — 43.The default is 43.

Исключения

Указанное значение при задании этого свойства меньше, чем минимальная ширина (4 пикселя), или больше, чем максимальная ширина (32 768 пикселей).The specified value when setting this property is less than the minimum width of 4 pixels or is greater than the maximum width of 32768 pixels.

Примеры

В следующем примере кода показано, RowHeadersWidth как использовать свойство в сценарии рисования строк.The following code example illustrates how to use the RowHeadersWidth property in a row-painting scenario. В этом примере значение этого свойства используется для вычисления границ, в которых рисуется пользовательский фон.In the example, the value of this property is used to calculate the bounds within which a custom background is drawn.

Этот код является частью большого примера, который можно использоватьв следующих руководствах: Настройка внешнего вида строк в элементе управленияWindows Forms DataGridView.This code is part of a larger example available inHow to: Customize the Appearance of Rows in the Windows Forms DataGridView Control.

// Paints the custom selection background for selected rows.
void dataGridView1_RowPrePaint(object sender,
        DataGridViewRowPrePaintEventArgs e)
{
    // Do not automatically paint the focus rectangle.
    e.PaintParts &= ~DataGridViewPaintParts.Focus;

    // Determine whether the cell should be painted
    // with the custom selection background.
    if ((e.State & DataGridViewElementStates.Selected) ==
                DataGridViewElementStates.Selected)
    {
        // Calculate the bounds of the row.
        Rectangle rowBounds = new Rectangle(
            this.dataGridView1.RowHeadersWidth, e.RowBounds.Top,
            this.dataGridView1.Columns.GetColumnsWidth(
                DataGridViewElementStates.Visible) -
            this.dataGridView1.HorizontalScrollingOffset + 1,
            e.RowBounds.Height);

        // Paint the custom selection background.
        using (Brush backbrush =
            new System.Drawing.Drawing2D.LinearGradientBrush(rowBounds,
                this.dataGridView1.DefaultCellStyle.SelectionBackColor,
                e.InheritedRowStyle.ForeColor,
                System.Drawing.Drawing2D.LinearGradientMode.Horizontal))
        {
            e.Graphics.FillRectangle(backbrush, rowBounds);
        }
    }
}
' Paints the custom selection background for selected rows.
Sub dataGridView1_RowPrePaint(ByVal sender As Object, _
    ByVal e As DataGridViewRowPrePaintEventArgs) _
    Handles dataGridView1.RowPrePaint

    ' Do not automatically paint the focus rectangle.
    e.PaintParts = e.PaintParts And Not DataGridViewPaintParts.Focus

    ' Determine whether the cell should be painted with the 
    ' custom selection background.
    If (e.State And DataGridViewElementStates.Selected) = _
        DataGridViewElementStates.Selected Then

        ' Calculate the bounds of the row.
        Dim rowBounds As New Rectangle( _
            Me.dataGridView1.RowHeadersWidth, e.RowBounds.Top, _
            Me.dataGridView1.Columns.GetColumnsWidth( _
            DataGridViewElementStates.Visible) - _
            Me.dataGridView1.HorizontalScrollingOffset + 1, _
            e.RowBounds.Height)

        ' Paint the custom selection background.
        Dim backbrush As New _
            System.Drawing.Drawing2D.LinearGradientBrush(rowBounds, _
            Me.dataGridView1.DefaultCellStyle.SelectionBackColor, _
            e.InheritedRowStyle.ForeColor, _
            System.Drawing.Drawing2D.LinearGradientMode.Horizontal)
        Try
            e.Graphics.FillRectangle(backbrush, rowBounds)
        Finally
            backbrush.Dispose()
        End Try
    End If

End Sub

Комментарии

RowHeadersWidth Свойство можно использовать для изменения размера столбца заголовков строк до указанной ширины.The RowHeadersWidth property can be used to resize the row header column to a specified width. Чтобы настроить ширину этого столбца в соответствии с содержимым ячеек заголовков строк, используйте AutoResizeRowHeadersWidth метод.To adjust the width of this column to fit the contents of the row header cells, use the AutoResizeRowHeadersWidth method.

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

Дополнительно