DataGridViewRow.GetPreferredHeight Méthode

Définition

Calcule la hauteur idéale de la ligne spécifiée en fonction des critères spécifiés.

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

Paramètres

rowIndex
Int32

Index de la ligne dont la hauteur par défaut est calculée.

autoSizeRowMode
DataGridViewAutoSizeRowMode

DataGridViewAutoSizeRowMode qui spécifie un mode de dimensionnement automatique.

fixedWidth
Boolean

true pour calculer la hauteur par défaut pour une largeur de cellule fixe ; sinon, false.

Retours

Hauteur idéale de la ligne, en pixels.

Exceptions

autoSizeRowMode n’est pas une valeur de DataGridViewAutoSizeRowMode valide.

rowIndex n'est pas dans la plage valide comprise entre 0 et le nombre de lignes contenues dans le contrôle moins 1.

Exemples

L’exemple de code suivant utilise la GetPreferredHeight méthode pour déterminer le nouveau remplissage d’une ligne qui a été redimensionnée. Cet exemple de code fait partie d’un exemple plus large fourni dans Guide pratique pour personnaliser l’apparence des lignes dans le contrôle DataGridView Windows Forms.

// 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

Remarques

Cette propriété est utilisée par la fonctionnalité de dimensionnement automatique basée sur le contenu du DataGridView contrôle pour déterminer la hauteur idéale d’une ligne. La rowIndex valeur vous permet de spécifier l’index de ligne réel d’une ligne partagée. (Les lignes partagées ont Index des valeurs de propriété de -1.)

Une fixedWidth valeur de paramètre de calcule la hauteur de false ligne en fonction des largeurs de colonne calculées qui permettront d’obtenir des ratios hauteur/largeur de cellule idéaux.

Pour que le contenu de la cellule soit encapsulé sur plusieurs lignes, le style de cellule en vigueur pour la cellule doit avoir une WrapMode valeur de propriété de True.

Pour plus d’informations sur le dimensionnement automatique, consultez Options de dimensionnement dans le contrôle DataGridView Windows Forms.

S’applique à

Voir aussi