Compartilhar via


DataGridViewRow.GetPreferredHeight Método

Definição

Calcula a altura ideal da linha especificada com base nos critérios indicados.

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

O índice da linha cuja altura preferencial é calculada.

autoSizeRowMode
DataGridViewAutoSizeRowMode

Um DataGridViewAutoSizeRowMode que especifica um modo de dimensionamento automático.

fixedWidth
Boolean

true para calcular a altura preferencial para uma largura da célula fixa; caso contrário, false.

Retornos

Int32

A altura ideal da linha em pixels.

Exceções

autoSizeRowMode não é um valor DataGridViewAutoSizeRowMode válido.

O rowIndex não está no intervalo válido de 0 até o número de linhas no controle menos 1.

Exemplos

O exemplo de código a seguir usa o GetPreferredHeight método para determinar o novo preenchimento de uma linha que foi redimensionada. Este exemplo de código faz parte de um exemplo maior fornecido em 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

Comentários

Essa propriedade é usada pelo recurso de dimensionamento automático baseado em conteúdo do DataGridView controle para determinar a altura ideal de uma linha. O rowIndex valor permite que você especifique o índice de linha real de uma linha compartilhada. (Linhas compartilhadas têm Index valores de propriedade de -1.)

Um fixedWidth valor de parâmetro calcula a altura da false linha com base nas larguras de coluna calculadas que alcançarão as taxas ideais de altura para largura da célula.

Para que o conteúdo da célula seja encapsulado em várias linhas, o estilo de célula em vigor para a célula deve ter um WrapMode valor de propriedade de True.

Para obter mais informações sobre o dimensionamento automático, consulte Opções de dimensionamento no controle Windows Forms DataGridView.

Aplica-se a

Confira também