Langue

FrameworkElement.ActualHeight Propriété

Définition

Obtient la hauteur rendue d’un FrameworkElement. Voir les remarques.

public:
 property double ActualHeight { double get(); };
double ActualHeight();
public double ActualHeight { get; }
var double = frameworkElement.actualHeight;
Public ReadOnly Property ActualHeight As Double

Valeur de propriété

Double

double

Hauteur, en pixels, de l’objet. La valeur par défaut est 0. La valeur par défaut peut être rencontrée si l’objet n’a pas encore été chargé et n’a pas encore été impliqué dans une passe de disposition qui affiche l’interface utilisateur.

Exemples

Cet exemple montre un scénario courant où vous utilisez ActualHeight d’un ou plusieurs éléments dans l’interface utilisateur pour définir la hauteur de l’un des éléments impliqués ou d’un autre élément, afin que la même hauteur nette soit conservée après l’action. Cette opération est généralement effectuée en réponse aux gestionnaires d’événements qui sont appelés lorsque des éléments sont ouverts ou fermés, ou que la zone d’affichage change.

void SDKSample::WebViewControl::PageWithAppBar::BottomAppBar_Opened(Object^ sender, Object^ obj)
{
    // AppBar has Opened so we need to put the WebView back to its
    // original size/location.
    AppBar^ bottomAppBar = (AppBar^) sender;
    if (bottomAppBar != nullptr)
    {
        // Force layout so that we can guarantee that our AppBar's
        // actual height has height
        this->UpdateLayout();
        // Get the height of the AppBar
        double appBarHeight = bottomAppBar->ActualHeight;
        // Reduce the height of the WebView to allow for the AppBar
        WebView8->Height = WebView8->ActualHeight - appBarHeight;
        // Translate the WebView in the Y direction to reclaim the space occupied by the AppBar.  
        TranslateYOpen->To = -appBarHeight / 2.0;
        // Run our translate animation to match the AppBar
        OpenAppBar->Begin();
    }
}
void BottomAppBar_Opened(object sender, object e)
{
    // AppBar has Opened so we need to put the WebView back to its
    // original size/location.
    AppBar bottomAppBar = sender as AppBar;
    if (bottomAppBar != null)
    {
        // Force layout so that we can guarantee that our AppBar's
        // actual height has height
        this.UpdateLayout();
        // Get the height of the AppBar
        double appBarHeight = bottomAppBar.ActualHeight;
        // Reduce the height of the WebView to allow for the AppBar
        WebView8.Height = WebView8.ActualHeight - appBarHeight;
        // Translate the WebView in the Y direction to reclaim the space occupied by 
        // the AppBar.  Notice that we translate it by appBarHeight / 2.0.
        // This is because the WebView has VerticalAlignment and HorizontalAlignment
        // of 'Stretch' and when we reduce its size it reduces its overall size
        // from top and bottom by half the amount.
        TranslateYOpen.To = -appBarHeight / 2.0;
        // Run our translate animation to match the AppBar
        OpenAppBar.Begin();
    }
}

Remarques

Note

Bien qu’il ait un champ de stockage ActualHeightProperty , ActualHeight ne déclenche pas de notifications de modification de propriété et il doit être considéré comme une propriété CLR standard et non une propriété de dépendance.

ActualHeight est une propriété calculée. Les calculs sont le résultat d’une passe de disposition, où l’objet est dimensionné en disposition en fonction de la logique de ses parents de disposition successifs. Pour plus d’informations, consultez Définir des dispositions avec XAML.

ActualHeight peut avoir plusieurs modifications signalées ou incrémentielles apportées à la valeur en raison d’opérations effectuées par le système de disposition. Si vous obtenez la valeur pendant que la disposition est toujours itérante, le système de disposition peut toujours calculer la mesure requise de l’espace pour les objets enfants, les contraintes par l’objet parent, et ainsi de suite. Étant donné que la valeur est basée sur une passe de rendu réelle, elle peut être légèrement derrière la valeur définie des propriétés telles que Height, qui peut être la base de la modification d’entrée.

À des fins de liaison ElementName , ActualHeight ne publie pas de mises à jour lorsqu’elle change (en raison de sa nature calculée asynchrone et au moment de l’exécution). N’essayez pas d’utiliser ActualHeight comme source de liaison pour une liaison ElementName . Si vous avez un scénario qui nécessite des mises à jour basées sur ActualHeight, utilisez un gestionnaire SizeChanged .

S’applique à

Voir aussi