
- •Введение в wpf
- •Разметка
- •Код программной части
- •Автономные приложения
- •Приложения, размещенные в браузере
- •Класс приложения
- •Безопасность
- •Элементы управления wpf по функциям
- •Двухмерные формы
- •Двухмерная геометрия
- •Двухмерные эффекты
- •Трехмерная визуализация
- •Изображения
- •Видео и аудио
- •Документы нефиксированного формата
- •Документы фиксированного формата
- •Документы xps
- •Заметки
- •Упаковка
- •Модель содержимого
- •Триггеры
- •Шаблоны элементов управления
- •Шаблоны данных
- •Ресурсы
- •Темы и обложки
- •Пользовательские элементы управления
- •Разделы общих сведений
- •Примеры
- •Основные понятия
- •Архитектура wpf
- •Основные понятия
- •Новые возможности wpf версии 4
- •Основные понятия
- •Объектные элементы xaml
- •Синтаксис атрибутов (свойства)
- •Синтаксис элемента свойства
- •Синтаксис коллекции
- •Свойства содержимого xaml
- •Текстовое содержимое
- •Объединение свойств содержимого и синтаксиса коллекции
- •Синтаксис атрибутов (события)
- •Префикс "X:"
- •Маршрутизируемые события
- •Основные понятия
- •Другие ресурсы
- •Изменение значения свойства элемента управления
- •Создание стиля для элемента управления
- •Создание ControlTemplate
- •Основные понятия
- •Другие ресурсы
- •Двухмерные формы
- •Двухмерная геометрия
- •Двухмерные эффекты
- •Изображения
- •Видео и аудио
- •Основные понятия
- •Другие ресурсы
- •Направление потока данных
- •Что инициирует обновления источника
- •Указание источника привязки
- •Указание пути к значению
- •Связывание и выражение привязки
- •Способы реализации коллекций
- •Представления коллекций
- •Понятие о представлениях коллекций
- •Создание представления
- •Использование представления по умолчанию
- •Использование представлений коллекций с таблицами данных ado.Net
- •Сортировка
- •Фильтрация
- •Группировка
- •Указатели на текущий элемент
- •Скрипт привязки "основной/подробности"
- •Связь проверочных правил и привязки
- •Предоставление визуального отклика
- •Процесс проверки
- •Основные понятия
- •Другие ресурсы
Основные понятия
Подробное описание синтаксиса XAML
Код XAML и пользовательские классы для WPF
Общие сведения о базовых элементах
Деревья в WPF
Другие ресурсы
Возможности пространства имен языка XAML (x:)
Расширения XAML WPF
Элементы управления
.NET Framework 4.5
.NET Framework 3.5
0 из 2 оценили этот материал как полезный - Оценить эту тему
Windows Presentation Foundation (WPF) поставляется с большинством общих компонентов пользовательского интерфейса, которые используются практически в каждом приложении Windows, например Button, Label, TextBox, Menu и ListBox.Ранее эти объекты назывались элементами управления.Хотя пакет SDK WPF продолжает использовать термин "элемент управления" для общего обозначения любого класса, который представляет видимый объект в приложении, обратите внимание, что классу не требуется наследование от класса Control, чтобы иметь визуальное представление.Классы, которые наследуют от класса Control, содержат ControlTemplate, который позволяет потребителю элемента управления радикально изменить внешний вид элемента управления, для чего не требуется создавать новый подкласс.В этом разделе обсуждается использование элементов управления в WPF (тех, которые наследуются от класса Control, и тех, которые не наследуются).
В этом разделе содержатся следующие подразделы.
Создание экземпляра элемента управления
Изменение внешнего вида элемента управления
Подписка на события
Расширенное содержимое в элементах управления
Связанные разделы
Создание
экземпляра элемента управления
Чтобы добавить элемент управления в приложение, используйте Extensible Application Markup Language (XAML) или код.Следующий пример показывает, как создать простое приложение, которое запрашивает у пользователя его имя и фамилию.Этом примере создает в XAML шесть элементов управления: две подписи, два текстовых поля и две кнопки.Все элементы управления могут быть созданы аналогичным образом.
XAML
Копировать
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="30"/>
<RowDefinition Height="30"/>
<RowDefinition Height="30"/>
<RowDefinition/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Label>
Enter your first name:
</Label>
<TextBox Grid.Row="0" Grid.Column="1"
Name="firstName" Margin="0,5,10,5"/>
<Label Grid.Row="1" >
Enter your last name:
</Label>
<TextBox Grid.Row="1" Grid.Column="1"
Name="lastName" Margin="0,5,10,5"/>
<Button Grid.Row="2" Grid.Column="0"
Name="submit" Margin="2">
View message
</Button>
<Button Grid.Row="2" Grid.Column="1"
Name="Clear" Margin="2">
Clear Name
</Button>
</Grid>
В
следующем примере то же самое приложение
создается в коде.Создание Grid,
grid1
для краткости было исключено из примера.В
grid1
указаны определения столбца и строки,
приведенные в предыдущем примере XAML.
C#
VB
Копировать
Label firstNameLabel;
Label lastNameLabel;
TextBox firstName;
TextBox lastName;
Button submit;
Button clear;
void CreateControls()
{
firstNameLabel = new Label();
firstNameLabel.Content = "Enter your first name:";
grid1.Children.Add(firstNameLabel);
firstName = new TextBox();
firstName.Margin = new Thickness(0, 5, 10, 5);
Grid.SetColumn(firstName, 1);
grid1.Children.Add(firstName);
lastNameLabel = new Label();
lastNameLabel.Content = "Enter your last name:";
Grid.SetRow(lastNameLabel, 1);
grid1.Children.Add(lastNameLabel);
lastName = new TextBox();
lastName.Margin = new Thickness(0, 5, 10, 5);
Grid.SetColumn(lastName, 1);
Grid.SetRow(lastName, 1);
grid1.Children.Add(lastName);
submit = new Button();
submit.Content = "View message";
Grid.SetRow(submit, 2);
grid1.Children.Add(submit);
clear = new Button();
clear.Content = "Clear Name";
Grid.SetRow(clear, 2);
Grid.SetColumn(clear, 1);
grid1.Children.Add(clear);
}
Изменение внешнего вида элемента управления
Изменение внешнего вида элемента управления для подбора внешнего вида приложения — это частая задача.Чтобы изменить внешний вид элемента управления, выполните одно из следующих действий в зависимости от того, что требуется выполнить:
Изменить значение свойства элемента управления.
Создайте Style для элемента управления.
Создайте новый ControlTemplate для элемента управления.