DataGridViewRow.GetPreferredHeight Método

Definición

Calcula el alto ideal de la fila que se indica basándose en los criterios especificados.

public:
 virtual int GetPreferredHeight(int rowIndex, System::Windows::Forms::DataGridViewAutoSizeRowMode autoSizeRowMode, bool fixedWidth);
public virtual int GetPreferredHeight (int rowIndex, System.Windows.Forms.DataGridViewAutoSizeRowMode autoSizeRowMode, bool fixedWidth);
abstract member GetPreferredHeight : int * System.Windows.Forms.DataGridViewAutoSizeRowMode * bool -> int
override this.GetPreferredHeight : int * System.Windows.Forms.DataGridViewAutoSizeRowMode * bool -> int
Public Overridable Function GetPreferredHeight (rowIndex As Integer, autoSizeRowMode As DataGridViewAutoSizeRowMode, fixedWidth As Boolean) As Integer

Parámetros

rowIndex
Int32

Índice de la fila de la que se calcula el alto preferido.

autoSizeRowMode
DataGridViewAutoSizeRowMode

DataGridViewAutoSizeRowMode que especifica un modo de tamaño automático.

fixedWidth
Boolean

true para calcular el alto preferido para un ancho de celda fijo; de lo contrario, false.

Devoluciones

Alto ideal de la fila, en píxeles.

Excepciones

autoSizeRowMode no es un valor DataGridViewAutoSizeRowMode válido.

rowIndex no está en el intervalo válido de 0 al número de filas del control menos 1.

Ejemplos

En el ejemplo de código siguiente se usa el GetPreferredHeight método para determinar el nuevo relleno de una fila cuyo tamaño se ha cambiado. Este ejemplo de código forma parte de un ejemplo más grande proporcionado en How to: Customize the Appearance of Rows in the Windows Forms DataGridView Control.

// Adjusts the padding when the user changes the row height so that 
// the normal cell content is fully displayed and any extra
// height is used for the content that spans multiple columns.
void dataGridView1_RowHeightChanged(object sender,
    DataGridViewRowEventArgs e)
{
    // Calculate the new height of the normal cell content.
    Int32 preferredNormalContentHeight =
        e.Row.GetPreferredHeight(e.Row.Index, 
        DataGridViewAutoSizeRowMode.AllCellsExceptHeader, true) -
        e.Row.DefaultCellStyle.Padding.Bottom;

    // Specify a new padding.
    Padding newPadding = e.Row.DefaultCellStyle.Padding;
    newPadding.Bottom = e.Row.Height - preferredNormalContentHeight;
    e.Row.DefaultCellStyle.Padding = newPadding;
}
' Adjusts the padding when the user changes the row height so that 
' the normal cell content is fully displayed and any extra
' height is used for the content that spans multiple columns.
Sub dataGridView1_RowHeightChanged(ByVal sender As Object, _
    ByVal e As DataGridViewRowEventArgs) _
    Handles dataGridView1.RowHeightChanged

    ' Calculate the new height of the normal cell content.
    Dim preferredNormalContentHeight As Int32 = _
        e.Row.GetPreferredHeight(e.Row.Index, _
        DataGridViewAutoSizeRowMode.AllCellsExceptHeader, True) - _
        e.Row.DefaultCellStyle.Padding.Bottom()

    ' Specify a new padding.
    Dim newPadding As Padding = e.Row.DefaultCellStyle.Padding
    newPadding.Bottom = e.Row.Height - preferredNormalContentHeight
    e.Row.DefaultCellStyle.Padding = newPadding

End Sub

Comentarios

Esta propiedad la usa la característica de ajuste automático de tamaño basado en contenido del DataGridView control para determinar el alto ideal de una fila. El rowIndex valor permite especificar el índice de fila real de una fila compartida. (Las filas compartidas tienen Index valores de propiedad de -1).

Un fixedWidth valor de parámetro de calcula el alto de false fila en función de los anchos de columna calculados que lograrán relaciones ideales de alto a ancho de celda.

Para que el contenido de la celda se ajuste a varias líneas, el estilo de celda en vigor para la celda debe tener un WrapMode valor de propiedad de True.

Para obtener más información sobre el ajuste de tamaño automático, vea Opciones de ajuste de tamaño en el control Windows Forms DataGridView.

Se aplica a

Consulte también