Категории
Самые читаемые
RUSBOOK.SU » Компьютеры и Интернет » Базы данных » Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю

Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю

25.08.2025 - 11:02 5 0
0
Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю
Описание Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю
В 10-м издании книги описаны новейшие возможности языка C# 9 и .NET 5 вместе с подробным закулисным обсуждением, призванным расширить навыки критического мышления разработчиков, когда речь идет об их ремесле. Книга охватывает ASP.NET Core, Entity Framework Core и многое другое наряду с последними обновлениями унифицированной платформы .NET, начиная с улучшений показателей производительности настольных приложений Windows в .NET 5 и обновления инструментария XAML и заканчивая расширенным рассмотрением файлов данных и способов обработки данных. Все примеры кода были переписаны с учетом возможностей последнего выпуска C# 9.
Читать онлайн Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 545 546 547 548 549 550 551 552 553 ... 642
Перейти на страницу:

<b>&lt;!-- Стандартный стиль для всех текстовых полей --&gt;</b>

&lt;Style TargetType=&quot;TextBox&quot;&gt;

  &lt;Setter Property=&quot;FontSize&quot; Value=&quot;14&quot;/&gt;

  &lt;Setter Property=&quot;Width&quot; Value=&quot;100&quot;/&gt;

(window.adrunTag = window.adrunTag || []).push({v: 1, el: 'adrun-4-390', c: 4, b: 390})

  &lt;Setter Property=&quot;Height&quot; Value=&quot;30&quot;/&gt;

  &lt;Setter Property=&quot;BorderThickness&quot; Value=&quot;5&quot;/&gt;

  &lt;Setter Property=&quot;BorderBrush&quot; Value=&quot;Red&quot;/&gt;

  &lt;Setter Property=&quot;FontStyle&quot; Value=&quot;Italic&quot;/&gt;

<b>  &lt;!-- Следующий установщик будет применен, только</b>

<b>       когда текстовое поле находится в фокусе --&gt;</b>

  &lt;Style.Triggers&gt;

    &lt;Trigger Property=&quot;IsFocused&quot; Value=&quot;True&quot;&gt;

      &lt;Setter Property=&quot;Background&quot; Value=&quot;Yellow&quot;/&gt;

    &lt;/Trigger&gt;

  &lt;/Style.Triggers&gt;

&lt;/Style&gt;

При тестировании этого стиля вы обнаружите, что по мере перехода с помощью клавиши <ТаЬ> между элементами TextBox текущий выбранный TextBox получает фон желтого цвета (если только стиль не отключен путем присваивания {x:Null} свойству Style).

Триггеры свойств также весьма интеллектуальны в том смысле, что когда условие триггера не истинно, то свойство автоматически получает стандартное значение. Следовательно, как только TextBox теряет фокус, он также автоматически принимает стандартный цвет без какой-либо работы с вашей стороны. По контрасту с ними триггеры событий (которые исследовались при рассмотрении анимации WPF) не возвращаются автоматически в предыдущее состояние.

Определение стилей с множеством триггеров

Триггеры могут быть спроектированы так, что определенные элементы Setter будут применяться, когда истинными должны оказаться многие условия. Пусть необходимо устанавливать фон элемента TextBox в Yellow только в случае, если он имеет активный фокус и курсор мыши находится внутри его границ. Для этого можно воспользоваться элементом MultiTriggern определить в нем каждое условие:

<b>&lt;!-- Стандартный стиль для всех текстовых полей --&gt;</b>

&lt;Style TargetType=&quot;TextBox&quot;&gt;

  &lt;Setter Property=&quot;FontSize&quot; Value=&quot;14&quot;/&gt;

  &lt;Setter Property=&quot;Width&quot; Value=&quot;100&quot;/&gt;

(window.adrunTag = window.adrunTag || []).push({v: 1, el: 'adrun-4-390', c: 4, b: 390})

  &lt;Setter Property=&quot;Height&quot; Value=&quot;30&quot;/&gt;

  &lt;Setter Property=&quot;BorderThickness&quot; Value=&quot;5&quot;/&gt;

  &lt;Setter Property=&quot;BorderBrush&quot; Value=&quot;Red&quot;/&gt;

  &lt;Setter Property=&quot;FontStyle&quot; Value=&quot;Italic&quot;/&gt;

<b>  &lt;!-- Следующий установщик будет применен, только когда текстовое</b>

<b>       поле имеет фокус И над ним находится курсор мыши --&gt;</b>

  &lt;Style.Triggers&gt;

    &lt;MultiTrigger&gt;

      &lt;MultiTrigger.Conditions&gt;

          &lt;Condition Property=&quot;IsFocused&quot; Value=&quot;True&quot;/&gt;

          &lt;Condition Property=&quot;IsMouseOver&quot; Value=&quot;True&quot;/&gt;

      &lt;/MultiTrigger.Conditions&gt;

      &lt;Setter Property=&quot;Background&quot; Value=&quot;Yellow&quot;/&gt;

    &lt;/MultiTrigger&gt;

  &lt;/Style.Triggers&gt;

&lt;/Style&gt;

Стили с анимацией

Стили также могут содержать в себе триггеры, которые запускают анимационную последовательность. Ниже показан последний стиль, который после применения к элементам управления Button заставит их увеличиваться и уменьшаться в размерах, когда курсор мыши находится внутри границ кнопки:

<b>&lt;!-- Стиль увеличивающейся кнопки --&gt;</b>

&lt;Style x:Key=&quot;GrowingButtonStyle&quot; TargetType=&quot;Button&quot;&gt;

  &lt;Setter Property=&quot;Height&quot; Value=&quot;40&quot;/&gt;

  &lt;Setter Property=&quot;Width&quot; Value=&quot;100&quot;/&gt;

(window.adrunTag = window.adrunTag || []).push({v: 1, el: 'adrun-4-390', c: 4, b: 390})

  &lt;Style.Triggers&gt;

    &lt;Trigger Property=&quot;IsMouseOver&quot; Value=&quot;True&quot;&gt;

      &lt;Trigger.EnterActions&gt;

        &lt;BeginStoryboard&gt;

          &lt;Storyboard TargetProperty=&quot;Height&quot;&gt;

            &lt;DoubleAnimation From=&quot;40&quot; To=&quot;200&quot;

                Duration=&quot;0:0:2&quot; AutoReverse=&quot;True&quot;/&gt;

          &lt;/Storyboard&gt;

        &lt;/BeginStoryboard&gt;

      &lt;/Trigger.EnterActions&gt;

1 ... 545 546 547 548 549 550 551 552 553 ... 642
Перейти на страницу:
На этой странице вы можете бесплатно скачать Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю торрент бесплатно.
Комментарии
Открыть боковую панель
Комментарии
Сергій
Сергій 25.01.2024 - 17:17
"Убийство миссис Спэнлоу" от Агаты Кристи – это великолепный детектив, который завораживает с первой страницы и держит в напряжении до последнего момента. Кристи, как всегда, мастерски строит
Топ месяца