Partager via


FrameworkElement.Width Propriété

Définition

Obtient ou définit la largeur d’un FrameworkElement.

public:
 property double Width { double get(); void set(double value); };
double Width();

void Width(double value);
public double Width { get; set; }
var double = frameworkElement.width;
frameworkElement.width = double;
Public Property Width As Double
<frameworkElement Width="double"/>
-or-
<frameworkElement Width="Auto"/>

Valeur de propriété

Double

double

Largeur de l’objet, en pixels. La valeur par défaut est NaN. À l’exception de la valeur NaN spéciale, cette valeur doit être égale ou supérieure à 0.

Exemples

Cet exemple montre un ensemble de propriétés simple d’un élément d’interface utilisateur qui est créé au moment de l’exécution et nécessite une initialisation de son contenu et des propriétés d’affichage de base telles que Height, Widthet Background. (L’arrière-plan est en fait une propriété Control , non définie par FrameworkElement.)

Button button2 = new Button();
button2.Height = 50;
button2.Width = 100;
button2.Background = new SolidColorBrush(Colors.Blue);
button2.Content = "Click Me";

Remarques

Width est l’une des trois propriétés accessibles en écriture sur FrameworkElement qui spécifient des informations de largeur. Les deux autres sont MinWidth et MaxWidth. S’il existe un conflit entre ces valeurs, l’ordre d’application pour la détermination de la largeur réelle est que doit d’abord MinWidth être respecté, puis MaxWidth, et enfin, s’il se trouve dans des limites, Width.

Plusieurs des types dérivés de FrameworkElement sont également dérivés de Shape. Toutes les classes n’utilisent Shape pas Height ou Width pour spécifier leur apparence, et à la place, elles utilisent des propriétés spécifiques qui peuvent définir un ensemble de points. Dans ce cas, un Height ou Width est calculé, mais n’est généralement pas défini directement.

Les classes personnalisées peuvent avoir des considérations similaires lorsque la classe peut avoir des propriétés plus significatives pour spécifier des dimensions que height ouWidth. Height ou Width sont toujours disponibles en tant que membres et sont définissables.

L’objet dans lequel la hauteur ou Width les propriétés sont définies est presque toujours un objet enfant dans la collection enfant d’un autre parent, et la définition Height d’une valeur ou Width d’une valeur n’est qu’une valeur suggérée pour le processus de disposition. Le système de disposition, ainsi que la logique de disposition particulière de la classe du parent, utilisent la valeur comme entrée sans liaison pendant le processus de disposition et peuvent avoir à clipler, redimensionner l’objet, redimensionner le conteneur ou une combinaison de ces comportements qui s’étendent sur plusieurs objets participants dans la disposition. La marge et le remplissage influencent également la taille disponible. Pour plus d’informations, voir Alignement, marge et espacement.

La valeur de retour de cette propriété est toujours la même que toute valeur qui lui a été définie. En revanche, la valeur de la propriété ActualWidth peut varier. La variance peut se produire soit de manière statique, car la disposition a rejeté la taille suggérée, soit momentanément. Le système de disposition lui-même fonctionne de manière asynchrone par rapport à l’ensemble du système de propriétés de , et le système de Widthdisposition n’a peut-être pas encore traité cette modification de la propriété de dimensionnement.

Les valeurs négatives pour Width ne sont pas autorisées.

En outre, ne définissez Width pas sur une valeur significativement supérieure à la taille maximale d’un affichage visuel possible.

« Auto » et NaN

La valeur par défaut de Height et Width est « Auto », représentée par NaN. Dans le balisage XAML, vous pouvez utiliser la chaîne « Auto » pour définir la valeur sur NaN.

Notes

En C#, vous pouvez obtenir NaN à partir de Double.NaN.

En C++, vous pouvez obtenir NaN à l’aide de la NAN macro ou std::numeric_limits<double>::quiet_NaN().

N’utilisez pas l’opérateur == pour tester naN.

En C#, utilisez Double.IsNaN() pour tester NaN.

En C++, utilisez isnan() pour tester NaN.

S’applique à

Voir aussi