FrameworkElement.Width Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает или задает ширину элемента 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"/>
Значение свойства
double
Ширина объекта в пикселях. Значение по умолчанию — NaN. За исключением специального значения NaN , это значение должно быть равно или больше 0.
Примеры
В этом примере показан простой набор свойств элемента пользовательского интерфейса, который создается во время выполнения и требует инициализации его содержимого и базовых свойств отображения, таких как Height, Width
и Background. (Фон фактически является свойством Control , не определенным в FrameworkElement.)
Button button2 = new Button();
button2.Height = 50;
button2.Width = 100;
button2.Background = new SolidColorBrush(Colors.Blue);
button2.Content = "Click Me";
Комментарии
Width
является одним из трех доступных для записи свойств в FrameworkElement , которые указывают сведения о ширине. Два других : MinWidth и MaxWidth. Если между этими значениями возникает конфликт, порядок применения для определения фактической ширины заключается в том, что сначала MinWidth
необходимо соблюдать, затем MaxWidth
, и, наконец, если он находится в пределах границ, Width
.
Некоторые производные типы FrameworkElement также являются производными от Shape. Не все Shape
классы используют Height или Width
для указания их внешнего вида, а вместо этого используют определенные свойства, которые могут определять набор точек. В этом случае Height
вычисляется или Width
, но обычно не устанавливается напрямую.
Пользовательские классы могут иметь аналогичные рекомендации, в которых класс может иметь свойства, которые более значимы для указания измерений, чем Height или Width
.
Height
или Width
по-прежнему доступны в качестве членов и настраиваются.
Объект, в котором заданы свойства Height или Width
, почти всегда является дочерним объектом в дочерней коллекции другого родительского элемента, а параметр Height
или Width
для значения является только предлагаемым значением для процесса макета. Система макета, а также логика конкретного макета родительского класса будут использовать значение в качестве не связанных входных данных во время процесса макета, и может потребоваться обрезать, изменить размер объекта, изменить размер контейнера или какое-либо сочетание этих действий, охватывающих несколько участвующих объектов в макете. Поля и заполнение также влияют на доступный размер. Дополнительные сведения см. в статье Выравнивание, поле и заполнение.
Возвращаемое значение этого свойства всегда совпадает с любым заданным для него значением. В отличие от этого, значение свойства ActualWidth может отличаться. Дисперсия может возникать либо статически, так как макет отклонил предлагаемый размер, либо на мгновение. Сама система макета работает асинхронно относительно набора Width
свойств , и система макета, возможно, еще не обработала изменение свойства изменения размера.
Отрицательные значения для Width
не допускаются.
Кроме того, не устанавливайте Width
значение, которое значительно больше максимального размера любого возможного визуального отображения.
"Auto" и NaN
Значение по умолчанию Height и Width
— "Auto", представленное NaN. В разметке XAML можно использовать строку "Auto", чтобы задать значение NaN.
Примечание
В C# вы можете получить NaN из Double.NaN.
В C++ вы можете получить NaN с помощью макросаNAN
или std::numeric_limits<double>::quiet_NaN()
.
Не используйте оператор для ==
проверки на наличие NaN.
В C# используйте Double.IsNaN() для тестирования naN.
В C++ используйте isnan() для тестирования naN.