FrameworkElement.Height Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает или задает предполагаемую высоту объекта FrameworkElement.
public:
property double Height { double get(); void set(double value); };
double Height();
void Height(double value);
public double Height { get; set; }
var double = frameworkElement.height;
frameworkElement.height = double;
Public Property Height As Double
<frameworkElement Height="double"/>
-or-
<frameworkElement Height="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";
Dim button2 As Button = New Button
button2.Height = 50
button2.Width = 100
button2.Background = New SolidColorBrush(Colors.Blue)
button2.Content = "Click Me"
Комментарии
Height — это одно из трех доступных для записи свойств в FrameworkElement , которые указывают сведения о высоте. Два других : MinHeight и MaxHeight. Если между этими значениями возникает конфликт, порядок применения для определения фактической высоты заключается в том, что сначала необходимо учитывать MinHeight , затем MaxHeight и, наконец, если она находится в пределах границ, Height.
Некоторые производные типы FrameworkElement также являются производными от Shape. Не все классы Shape используют высоту или ширину для указания их внешнего вида, а вместо этого используют определенные свойства, которые могут определять набор точек. В этом случае вычисляются значения Height или Width , но обычно не задаются напрямую.
Пользовательские классы могут иметь аналогичные рекомендации, когда класс может иметь свойства, более значимые для указания измерений, чем Height или Width. Высота и ширина по-прежнему доступны в качестве членов и могут быть заданы.
Объект, для которого заданы свойства Height или Width , почти всегда является дочерним объектом в дочерней коллекции другого родительского элемента, а установка параметра Height или Width для значения является только предлагаемым значением для процесса макета. Система макета, а также конкретная логика макета родительского класса будет использовать значение в качестве неперевязывающего входного данных во время процесса макета, и может потребоваться обрезать, изменить размер объекта, изменить размер контейнера или какое-либо сочетание этих поведений, которое охватывает несколько объектов, участвующих в макете. Поля и заполнение также влияют на доступный размер. Дополнительные сведения см. в статье Выравнивание, поле и заполнение.
Возвращаемое значение этого свойства всегда совпадает с любым значением, которое было задано для него. В отличие от этого, значение свойства ActualHeight может отличаться. Дисперсия может возникнуть либо статически, так как макет отклонил предлагаемый размер, либо на мгновение. Сама система макета работает асинхронно относительно набора Height в системе свойств, и система макета, возможно, еще не обработала это изменение свойства изменения размера.
Отрицательные значения высоты не допускаются.
Кроме того, не устанавливайте для параметра Height значение, значительно превышающее максимальный размер любого возможного визуального отображения.
"Auto" и NaN
Значение по умолчанию для высоты и ширины — "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.
Система макета интерпретирует значение Auto, как правило, означает, что размер объекта должен быть равным размеру в макете, а не к определенному значению пикселя.