Элементы управления

Обзор элементов управления

Последнее обновление: 1.11.2015

Все элементы управления наследуются от общего класса System.Window.Control и могут быть условно разделены на несколько подгрупп:

  • Элементы управления содержимым, например кнопки (Button)

  • Специальные контейнеры, которые содержат другие элементы, но в отличие от элементов Grid или Canvas не являются контейнерами компоновки - ScrollViewer,GroupBox

  • Декораторы, чье предназначение создание определенного фона вокруг вложенных элементов, например, Border или Viewbox.

  • Элементы управления списками, например, ListBox, ComboBox.

  • Текстовые элементы управления, например, TextBox, TextBlock.

  • Элементы, основанные на диапазонах значений, например, ProgressBar, Slider.

  • Элементы для работ с датами, например, DatePicker и Calendar.

  • Элементы для работы с изображениями, которые представлены элементом Image.

Некоторые общие свойства элементов управления

Name

Наверное важнейшее свойство. По установленному имени впоследствии можно будет обращаться к элементу как в коде, так и в xaml разметке.

Margin

Это свойство устанавливает отступы вокруг элемента. Синтаксис: Margin="левый_отступ верхний_отступ правый_отступ нижний_отступ". Например, установим отступы у кнопки слева и сверху равными 10:

<Button Background="Blue" Width="40" Height="40" Margin ="10 10 0 0"/>

Если мы зададим свойство таким образом: Margin="20", то сразу установим отступ для всех четырех сторон.

Padding

Если свойство Margin задает отступ элемента управления от внешнего контейнера, то свойство Padding задает отступ содержимого некоторого элемента от границ этого элемента. Синтаксис аналогичен: Padding="левый_отступ верхний_отступ правый_отступ нижний_отступ". Вообщем свойства Margin и Padding аналогичны используемым одноимненным атрибутам в html

Width и Height

Эти свойства устанавливают ширину и высоту элемента. Также MinWidth и MinHeight и MaxWidth и MaxHeight устанавливают минимально и максимально допустимые ширину и высоту элемента.

Выравнивание элемента и его контента

VerticalAlignment - выравнивает элемент по вертикали и принимает следующие значения: Bottom, Center, Stretch, Top.

HorizontalAlignment - выравнивает элемент по вертикали и принимает следующие значения: Center,Left, Right, Stretch.

Выравнивание содержимого внутри элемента (для элементов управления содержимым, например, кнопок) задается свойствами HorizontalContentAlignment (выравнивание по горизонтали) и VerticalContentAlignment (выравнивание по вертикали), аналогичны свойствам VerticalAlignment/HorizontalAlignment.

Visibility

Это свойство устанавливает параметры видимости элемента и может принимать одно из трех значений:

Visible - элемент виден и участвует в компоновке.

Collapsed - элемент не виден и не участвует в компоновке.

Flow Direction

Данное свойство задает направление текста. Если оно равно RightToLeft, то текст начинается с правого края, если - LeftToRight, то с левого.

	<StackPanel>
            <TextBlock FlowDirection="RightToLeft">RightToLeft</TextBlock>
            <TextBlock FlowDirection="LeftToRight">LeftToRight</TextBlock>
    </StackPanel>

Свойства настройки шрифтов

  • FontFamily - определяет имя шрифта.

  • FontSize - определяет высоту шрифта.

  • FontStyle - определяет наклон шрифта, принимает одно из трех значений - Normal, Italic,Oblique.

  • FontWeight - определяет толщину шрифта и принимает ряд значений, как Black,Bold и др.

  • FontStretch - определяет, как будет растягивать или сжимать текст, например, значение Condensed сжимает текст, а Expanded - расстягивает.

  • 		<StackPanel>
                <TextBlock  VerticalAlignment="Center" HorizontalAlignment="Center" Text="Hello World!"
                       FontFamily="Georgia" FontSize="14" FontWeight="Bold" Foreground="BlueViolet" FontStyle="Italic" />
                <TextBlock  VerticalAlignment="Top" HorizontalAlignment="Center" Text="Hello World!"
                       FontFamily="Arial" FontSize="14" FontWeight="Bold" Foreground="DarkOliveGreen" FontStyle="Normal" />
                <TextBlock  VerticalAlignment="Top" HorizontalAlignment="Center" Text="Hello World!"
                       FontFamily="Courier New" FontSize="14" FontWeight="Light" Foreground="DarkRed" FontStyle="Normal" />
            </StackPanel>
    

    Cursor

    Это свойство позволяет нам получить или установить курсор для элемента управления в одно из значений, например, Hand, Arrow, Wait и др.

    Установка курсора в коде Button1.Cursor=Cursors.Hand;

    Background и Foreground

    Свойства Background и Foreground задают соответственно цвет фона и текста элемента управления. Общий синтаксис задания свойств: Backround="Blue" или Background="#ffffff".

    Также можно задавать цвет с помощью кистей, таких как SolidBrush или LinearGradientBrush. Более подробно о кистях в соответствующей главе, а пока пара примеров задания цвета с помощью кистей:

    	<Grid x:Name="LayoutRoot">
            <Grid.Background>
                <RadialGradientBrush Center="0.5,0.5" GradientOrigin="0.5,0.5">
                    <GradientStopCollection>
                        <GradientStop Color="Red" Offset="0" />
                        <GradientStop Color="Blue" Offset="1.4" />
                    </GradientStopCollection>
                </RadialGradientBrush>
            </Grid.Background>
            <Button Width="120" Height="40" Content="Hello World">
                <Button.Background>
                    <LinearGradientBrush>
                        <GradientStopCollection>
                            <GradientStop Color="Blue" Offset="0" />
                            <GradientStop Color="Red" Offset="1" />
                        </GradientStopCollection>
                    </LinearGradientBrush>
                </Button.Background>
            </Button>
        </Grid>
    

    Помощь сайту
    Юмани:
    410011174743222
    Перевод на карту
    Номер карты:
    4048415020898850