Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю
Роль класса System.Windows.Threading.DispatcherObject
Последним базовым классом для типа
WindowSystem.ObjectDispatherObjectDispatcherSystem.Windows.Threading.DispatcherDispatcherDispatcherСинтаксис XAML для WPF
Приложения WPF производственного уровня обычно будут использовать отдельные инструменты для генерации необходимой разметки XAML. Как бы ни были удобны такие инструменты, важно понимать общую структуру языка XAML. Для содействия процессу изучения доступен популярный (и бесплатный) инструмент, который позволяет легко экспериментировать с XAML.
Введение в Kaxaml
Когда вы только приступаете к изучению грамматики XAML, может оказаться удобным в применении бесплатный инструмент под названием Kaxaml. Этот популярный редактор/анализатор XAML доступен по ссылке
https://github.com/punker76/kaxamlНа заметку! Во многих предшествующих изданиях книги мы направляли читателей на веб-сайт
www.kaxaml.comhttps://github.com/punker76https://github.com/punker76/kaxaml/releasesРедактор Kaxaml полезен тем, что не имеет никакого понятия об исходном коде С#, обработчиках ошибок или логике реализации. Он предлагает намного более прямолинейный способ тестирования фрагментов XAML, нежели использование полноценного шаблона проекта WPF в Visual Studio. К тому же Kaxaml обладает набором интегрированных инструментов, в том числе средством выбора цвета, диспетчером фрагментов XAML и даже средством "очистки XAML", которое форматирует разметку XAML на основе заданных настроек. Открыв Kaxaml в первый раз, вы найдете в нем простую разметку для элемента управления
<Page><Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> <Grid> </Grid></Page>Подобно объекту
WindowPageWindowPageNavigationWindowFrame<Page><Window>На заметку! Если в окне разметки Kaxaml заменить элементы
<Page></Page><Window></Window>В качестве начального теста введите следующую разметку в панели XAML, находящейся в нижней части окна Kaxaml:
<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> <Grid> <b><!-- Кнопка со специальным содержимым --></b> <Button Height="100" Width="100"> <Ellipse Fill="Green" Height="50" Width="50"/> </Button> </Grid></Page>В верхней части окна Kaxaml появится визуализированная страница (рис. 24.2).

Во время работы с Kaxaml помните, что данный инструмент не позволяет писать разметку, которая влечет за собой любую компиляцию кода (но разрешено использовать
х:Nameх:ClassFieldModifierClassModifierПространства имен XML и "ключевые слова" XAML
Корневой элемент XAML-документа WPF (такой как
<Window><Page><UserControl><Application><Page<b> xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"</b><b> xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"></b> <Grid> </Grid>