Студопедия

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

КАТЕГОРИИ:

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






Страница 5. Ступенчатая закраска градиентами




У линейного градиента есть коллекция GradientStops, содержащая объекты GradientStop. Каждый из объектов коллекции задает начальный цвет градиента и правую границу полного перекрытия этим цветом предыдущего. В такой модели дополнительно используются точки границ закраски, определяемые свойствами StartPoint и EndPoint. Для иллюстрации создадим страницу, поместим на нее кнопку и закрасим кнопку вертикальными градиентами.

  • Создайте новую страницу Page5 в файле CreateBrushes.cs, поместите на нее кнопку и закрасьте вертикальными градиентами с помощью следующего кода
namespace WpfApp1{ class Page5 : Page { public Page5() { this.WindowTitle = "Page5: Закраска цветами радуги"; Button btn = new Button(); this.Content = btn; btn.Content = "Next Page6"; btn.Click += new RoutedEventHandler(btn5_Click); // Создание и присоединение градиента LinearGradientBrush brush = new LinearGradientBrush(); btn.Background = brush; brush.StartPoint = new Point(0, 0); brush.EndPoint = new Point(1, 0); // Цвета радуги brush.GradientStops.Add(new GradientStop(Colors.Red, 0)); brush.GradientStops.Add(new GradientStop(Colors.Orange, .17)); brush.GradientStops.Add(new GradientStop(Colors.Yellow, .33)); brush.GradientStops.Add(new GradientStop(Colors.Green, .5)); brush.GradientStops.Add(new GradientStop(Colors.CornflowerBlue, .67)); brush.GradientStops.Add(new GradientStop(Colors.Blue, .84)); brush.GradientStops.Add(new GradientStop(Colors.BlueViolet, 1)); } // Переход на следующую страницу void btn5_Click(object sender, RoutedEventArgs e) { } }}
  • Вставьте в обработчик кнопки перехода на следующую страницу в классе Page4 код создания экземпляра Page5
// Переход на следующую страницу Page5 page5; void btn4_Click(object sender, RoutedEventArgs e) { if (!this.NavigationService.CanGoForward) page5 = new Page5();// Создаем только один раз this.NavigationService.Navigate(page5); }
  • Запустите приложение и испытайте работу класса Page5, рисующего последовательные переливы цветов радуги

 


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