Экспорт (0) Печать
Развернуть все
Данная статья переведена автоматически. Наведите указатель мыши на предложения статьи, чтобы просмотреть исходный текст. Дополнительные сведения.
Перевод
Текст оригинала

FrameworkElement.MaxHeight - свойство

Возвращает или задаёт максимальное ограничение высоты элемента.

Пространство имен:  System.Windows
Сборка:  PresentationFramework (в PresentationFramework.dll)
XMLNS для XAML: http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation

[LocalizabilityAttribute(LocalizationCategory.None, Readability = Readability.Unreadable)]
[TypeConverterAttribute(typeof(LengthConverter))]
public double MaxHeight { get; set; }
<object MaxHeight="double"/>
- or –
<object MaxHeight ="qualifiedDouble"/>

Значения XAML

double

Double

Строковое представление значения Double равно или больше 0.0. Это интерпретируется как измерение аппаратно-независимая единица (1/96 дюйма). Строки необязательно должны включать десятичные запятые явным образом. Например, значение 1 приемлемо.

Применяются те же ограничения диапазона Double, что упоминаются в разделе "Значение свойства", кроме того, что необходимо использовать Расширение разметки x:Static, если требуется явно задать значение PositiveInfinity.

qualifiedDouble

Описанное выше значение типа double, за которым следует одна из строк объявления единицы измерения: px, in, cm или pt.

px (по умолчанию) является аппаратно-независимые единицы (1/96 дюйма на единицу)

in — дюймы; 1 дюйм==96 точек

cm — сантиметры; 1см==(96/2,54) точек

pt — точки; 1пиксель==(96/72) точек

Значение свойства

Тип: System.Double
Максимальная высота элемента в аппаратно-независимые единицы (1/96 дюйма на единицу). Значение по умолчанию — PositiveInfinity. Данное значение может представлять собой любую величину, большую или равную 0.0. Значение PositiveInfinity также является допустимым.

Поле идентификатора

MaxHeightProperty

Свойства метаданных, которым присвоено значение true

AffectsMeasure

Это одно из трех свойств FrameworkElement, задающих информацию о высоте. Существуют еще два свойства — MinHeight и Height. В случае конфликта между этими значениями порядок определения фактической высоты в приложении следующий: сначала должно учитываться свойство MinHeight, затем MaxHeight, и наконец, если каждое из них укладывается в границы, свойство Height.

Ограничения на значение Double применяются механизмом ValidateValueCallback. Если попытаться задать недопустимое значение, произойдет исключение времени выполнения.

В данном примере визуально показывается разница в получаемом изображении в результате задания четырех связанных с высотой свойств в Windows Presentation Foundation (WPF).

Класс FrameworkElement предоставляет четыре свойства, описывающих характеристики высоты элемента. Эти четыре свойства могут конфликтовать, и в этом случае значение, которое получает приоритет, определяется следующим образом: значение MinHeight получает приоритет перед значением MaxHeight, которое, в свою очередь, получает приоритет перед значением Height. Четвертое свойство ActualHeight доступно только для чтения и сообщает о фактической высоте, определенной при взаимодействии с процессом макета.

В следующих примерах Язык XAML (Extensible Application Markup Language) элемент Rectangle (rect1) представлен в качестве дочернего элемента объекта Canvas. Можно изменить свойства высоты Rectangle с помощью нескольких элементов ListBox, представляющих значения свойств MinHeight, MaxHeight и Height. Таким образом визуально отображается приоритет каждого свойства.


<Canvas Height="200" MinWidth="200" Background="#b0c4de" VerticalAlignment="Top"  HorizontalAlignment="Center" Name="myCanvas" Margin="0,0,0,50">
    <Rectangle HorizontalAlignment="Center" Canvas.Top="50" Canvas.Left="50"  Name="rect1" Fill="#4682b4" Height="100" Width="100"/>
</Canvas>


...


    <TextBlock Grid.Row="1" Grid.Column="0" Margin="10,0,0,0" TextWrapping="Wrap">Set the Rectangle Height:</TextBlock>
    <ListBox Grid.Column="1" Grid.Row="1" Margin="10,0,0,0" Height="50" Width="50" SelectionChanged="changeHeight">
      <ListBoxItem>25</ListBoxItem>
      <ListBoxItem>50</ListBoxItem>
      <ListBoxItem>75</ListBoxItem>
      <ListBoxItem>100</ListBoxItem>
      <ListBoxItem>125</ListBoxItem>
      <ListBoxItem>150</ListBoxItem>
      <ListBoxItem>175</ListBoxItem>
      <ListBoxItem>200</ListBoxItem>
    </ListBox>

	<TextBlock Grid.Row="1" Grid.Column="2" Margin="10,0,0,0" TextWrapping="Wrap">Set the Rectangle MinHeight:</TextBlock>
    <ListBox Grid.Column="3" Grid.Row="1" Margin="10,0,0,0" Height="50" Width="50" SelectionChanged="changeMinHeight">
      <ListBoxItem>25</ListBoxItem>
      <ListBoxItem>50</ListBoxItem>
      <ListBoxItem>75</ListBoxItem>
      <ListBoxItem>100</ListBoxItem>
      <ListBoxItem>125</ListBoxItem>
      <ListBoxItem>150</ListBoxItem>
      <ListBoxItem>175</ListBoxItem>
      <ListBoxItem>200</ListBoxItem>
  </ListBox>      

    <TextBlock Grid.Row="1" Grid.Column="4" Margin="10,0,0,0" TextWrapping="Wrap">Set the Rectangle MaxHeight:</TextBlock>
    <ListBox Grid.Column="5" Grid.Row="1" Margin="10,0,0,0" Height="50" Width="50" SelectionChanged="changeMaxHeight">
      <ListBoxItem>25</ListBoxItem>
      <ListBoxItem>50</ListBoxItem>
      <ListBoxItem>75</ListBoxItem>
      <ListBoxItem>100</ListBoxItem>
      <ListBoxItem>125</ListBoxItem>
      <ListBoxItem>150</ListBoxItem>
      <ListBoxItem>175</ListBoxItem>
      <ListBoxItem>200</ListBoxItem> 
    </ListBox>


В следующих примерах кода программной части обрабатываются события, которые создаются событием SelectionChanged. Каждый обработчик берет значение из ListBox, анализирует его как Double и применяет это значение к указанному свойству высоты. Значения высоты также преобразуются в строку и записываются в различные элементы TextBlock (определение этих элементов не представлено в выбранном XAML).


private void changeHeight(object sender, SelectionChangedEventArgs args)
{
    ListBoxItem li = ((sender as ListBox).SelectedItem as ListBoxItem);
    Double sz1 = Double.Parse(li.Content.ToString());
    rect1.Height = sz1;
    rect1.UpdateLayout();
    txt1.Text= "ActualHeight is set to " + rect1.ActualHeight;
    txt2.Text= "Height is set to " + rect1.Height;
    txt3.Text= "MinHeight is set to " + rect1.MinHeight;
    txt4.Text= "MaxHeight is set to " + rect1.MaxHeight;
}
private void changeMinHeight(object sender, SelectionChangedEventArgs args)
{
    ListBoxItem li = ((sender as ListBox).SelectedItem as ListBoxItem);
    Double sz1 = Double.Parse(li.Content.ToString());
    rect1.MinHeight = sz1;
    rect1.UpdateLayout();
    txt1.Text= "ActualHeight is set to " + rect1.ActualHeight;
    txt2.Text= "Height is set to " + rect1.Height;
    txt3.Text= "MinHeight is set to " + rect1.MinHeight;
    txt4.Text= "MaxHeight is set to " + rect1.MaxHeight;
}
private void changeMaxHeight(object sender, SelectionChangedEventArgs args)
{
    ListBoxItem li = ((sender as ListBox).SelectedItem as ListBoxItem);
    Double sz1 = Double.Parse(li.Content.ToString());
    rect1.MaxHeight = sz1;
    rect1.UpdateLayout();
    txt1.Text= "ActualHeight is set to " + rect1.ActualHeight;
    txt2.Text= "Height is set to " + rect1.Height;
    txt3.Text= "MinHeight is set to " + rect1.MinHeight;
    txt4.Text= "MaxHeight is set to " + rect1.MaxHeight;
}


Полный код примера см. в разделе Пример свойств высоты.

.NET Framework

Поддерживается в версиях: 4.5, 4, 3.5, 3.0

.NET Framework (клиентский профиль)

Поддерживается в версиях: 4, 3.5 с пакетом обновления 1 (SP1)

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista с пакетом обновления 2 (SP2), Windows Server 2008 (роль основных серверных компонентов не поддерживается), Windows Server 2008 R2 (роль основных серверных компонентов поддерживается в пакете обновления 1 (SP1) или выше; системы на базе Itanium не поддерживаются)

Среда .NET Framework поддерживает не все версии каждой платформы. Поддерживаемые версии перечислены в разделе Требования к системе для .NET Framework.

Добавления сообщества

ДОБАВИТЬ
Показ:
© 2014 Microsoft