FrameworkElement.MaxWidth Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает или задает ограничение максимальной ширины объекта FrameworkElement.
public:
property double MaxWidth { double get(); void set(double value); };
double MaxWidth();
void MaxWidth(double value);
public double MaxWidth { get; set; }
var double = frameworkElement.maxWidth;
frameworkElement.maxWidth = double;
Public Property MaxWidth As Double
<frameworkElement MaxWidth="double"/>
Значение свойства
double
Максимальная ширина объекта в пикселях. Значение по умолчанию — PositiveInfinity. Это может быть любое значение, равное или больше 0. PositiveInfinity также является допустимым.
Примеры
В этом примере XAML показан способ указания MaxWidth для элемента ViewBox. ViewBox — это декоратор, который может применять сведения о макете к одному дочернему элементу и разделять области макета для следующего родительского элемента (в данном случае StackPanel).
<Grid Height="600" Width="600">
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="auto" />
<RowDefinition />
</Grid.RowDefinitions>
<StackPanel Grid.Row="0" Grid.Column="0" Margin="5,5,5,5" Orientation="Vertical">
<TextBlock Text="Stretch" FontWeight="Bold" FontSize="12" />
<Button Name="btn1" Click="stretchNone" Content="None" />
<Button Name="btn2" Click="stretchFill" Content="Fill" />
<Button Name="btn3" Click="stretchUni" Content="Uniform" />
<Button Name="btn4" Click="stretchUniFill" Content="UniformToFill" />
</StackPanel>
<StackPanel Grid.Row="0" Grid.Column="1" Margin="5,5,5,5" Orientation="Vertical">
<TextBlock Text="StretchDirection" FontWeight="Bold" FontSize="12" />
<Button Name="btn5" Click="sdUpOnly" Content="UpOnly" />
<Button Name="btn6" Click="sdDownOnly" Content="DownOnly" />
<Button Name="btn7" Click="sdBoth" Content="Both" />
</StackPanel>
<StackPanel Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" Margin="5"
Orientation="Vertical">
<TextBlock Name="txt1" FontSize="12" FontWeight="Bold" />
<TextBlock Name="txt2" FontSize="12" FontWeight="Bold" />
</StackPanel>
<StackPanel Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="2" Margin="5"
Orientation="Horizontal">
<Viewbox MaxWidth="100" MaxHeight="100" Name="vb1">
<Image Source="flower.jpg"/>
</Viewbox>
<Viewbox MaxWidth="200" MaxHeight="200" Name="vb2">
<Image Source="flower.jpg"/>
</Viewbox>
<Viewbox MaxWidth="300" MaxHeight="300" Name="vb3">
<Image Source="flower.jpg"/>
</Viewbox>
</StackPanel>
</Grid>
Комментарии
MaxWidth является одним из трех доступных для записи свойств в FrameworkElement , которые задают сведения о ширине. Два других : MinWidth и Width. В случае конфликта между этими значениями порядок применения фактического определения ширины заключается в том, что сначала необходимо соблюдать MinWidth , затем MaxWidth и, наконец, если он находится в пределах границ, Width. Все эти свойства являются рекомендациями по поведению макета родительского элемента в дереве объектов. Ширина объекта после выполнения макета доступна в качестве значения свойства ActualWidth .
Итоговое значение ActualWidth элемента может превышать MaxWidth. Например, если параметру UseLayoutRounding присвоено значение true , а приложение работает на дисплее с масштабом разрешения более 100 %, то ActualWidth может быть округлен вверх, чтобы убедиться, что пользовательский интерфейс не будет выглядеть размытым при масштабировании.