Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Страница 3. Использование линейной градиентной кисти LinearGradientBrush






Одну из альтернатив однородных кистей составляют градиентные кисти с постепенным переходом шлейфа двух и более цветов. В простейшем случае для создания линейной градиентной кисти достаточно двух крайних точек с определенными в них цветами. Градиентный шлейф будет строиться вдоль соединяющей эти точки прямой линии перпендикулярно ей и заливать всю поверхность ограничивающего прямоугольника, внутри которого находится определяющий отрезок.

Конструктор объекта линейной градиентной кисти имеет несколько перегрузок, в одних из которых задаются две точки и два цвета; два цвета, начальная точка привязки вектора градиента и угол его направления закраски. Точки могут задавать относительные (по умолчанию) и абсолютные координаты в рамках ограничивающего прямоугольника, что определяется свойством MappingMode и его значением из перечисления BrushMappingMode.

  • Создайте новую страницу Page3 в файле CreateBrushes.cs, демонстрирующую один из вариантов линейной градиентной закраски
namespace WpfApp1{ class Page3: Page { public Page3() { this.WindowTitle = " Page3: Кисть LinearGradientBrush"; Button btn = new Button(); btn.Content=" Next Page4"; btn.Click += new RoutedEventHandler(btn3_Click); this.Content = btn; // Создание и присоединение градиента LinearGradientBrush brush = new LinearGradientBrush(Colors.Red, Colors.Blue, new Point(0, 0), new Point(1, 1)); btn.Background = brush; } // Переход на следующую страницу void btn3_Click(object sender, RoutedEventArgs e) { } }}
  • Вставьте в обработчик кнопки перехода на следующую страницу в классе Page2 код создания экземпляра Page3
// Переход на следующую страницу Page3 page3; void btnPage2_Click(object sender, RoutedEventArgs e) { if (! this.NavigationService.CanGoForward) page3 = new Page3(); // Создаем только один раз this.NavigationService.Navigate(page3); }
  • Запустите приложение и испытайте работу класса Page3 в составе навигационного каркаса

 


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.005 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал