## Элементы управления содержимым
Если нам надо вложить в элемент управления содержимым несколько элементов, то мы можем использовать контейнеры компоновки:
XAML:
```
...
...
```
Результат:
![](./img/1.png)
## Кнопки
### Свойства IsDefault и IsCancel
XAML:
```
...
...
```
C#:
```
...
private void acceptButton_Click(object sender, RoutedEventArgs e)
{
MessageBox.Show("действие выполнено");
}
private void escButton_Click(object sende, RoutedEventArgs e)
{
this.Close();
}
...
```
Результат:
![](./img/2.png)
## CheckBox
XAML:
```
...
...
```
C#:
```
...
private void checkBox_Unchecked(object sender, RoutedEventArgs e)
{
MessageBox.Show(checkBox.Content.ToString() + " не отмечен");
}
private void checkBox_Checked(object sender, RoutedEventArgs e)
{
MessageBox.Show(checkBox.Content.ToString() + " отмечен");
}
private void checkBox_Indeterminate(object sender, RoutedEventArgs e)
{
MessageBox.Show(checkBox.Content.ToString() + " в неопределенном состоянии");
}
...
```
Результат:
![](./img/3.png)
## RadioButton
XAML:
```
...
...
```
C#:
```
...
rivate void RadioButton_Checked(object sender, RoutedEventArgs e)
{
RadioButton pressed = (RadioButton)sender;
MessageBox.Show(pressed.Content.ToString());
}
...
```
## Текстовые элементы управления
### TextBox
XAML:
```
...
Начальный текст
...
```
C#:
```
...
private void TextBox_TextChanged(object sender, TextChangedEventArgs e)
{
TextBox textBox = (TextBox)sender;
MessageBox.Show(textBox.Text);
}
...
```
Результат:
![](./img/5.png)
XAML:
```
...
Начальный текст
...
```
C#:
```
...
private void Button_Click(object sender, RoutedEventArgs e)
{
textBox1.SelectionStart = 5;
textBox1.SelectionLength = 10;
textBox1.Focus();
// данное выражение эквивалентно
//textBox1.Select(5, 10);
}
...
```
Результат:
![](./img/6.png)
### Проверка орфографии
XAML:
```
...
Начальный текст
...
```
Результат:
![](./img/7.png)
### Метка (Label)
XAML:
```
...
...
```
Результат:
![](./img/9.png)
### PasswordBox
XAML:
```
...
...
```
Результат:
![](./img/10.png)
## Элементы управления списком
### ListBox
XAML:
```
...
...
```
Результат:
![](./img/11.png)
### ComboBox
Тут почему то нагиевы в списке не появляются но в вс видно одного
XAML:
```
...
первый нагиев
второй нагиев
третий нагиев
...
```
Результат:
![](./img/12.png)
![](./img/13.png)
## DataGrid
XAML:
```
...
...
```
Результат:
![](./img/14.png)
## Работа с изображениями
### Image
У меня опять программа не запускается видимо не вывозит нагиева
XAML:
```
...
...
```
Результат:
Нагиевых видно только в конструкторе
![](./img/15.png)