Написать два метода рисования фигур: DrawRectangle и DrawTriangle - C#
Формулировка задачи:
Добрый день! Привет всем! Помогите пожалуйста написать два метода для рисования фигур
, имеющих один параметр, который содержит цвет фигуры: DrawRectangle - для рисования прямоугольника DrawTriangle - для рисования прямоугольного треугольника Создать многоадресный (multicasting) делегат, который рисует эти фигуры переданным цветом.Решение задачи: «Написать два метода рисования фигур: DrawRectangle и DrawTriangle»
textual
Листинг программы
using System;
using System.Windows;
using System.Windows.Media;
using System.Windows.Shapes;
namespace WpfApplication
{
public partial class MainWindow
{
private readonly Shape rectangle;
private readonly Shape triangle;
public MainWindow()
{
InitializeComponent();
rectangle = new Rectangle {Width = 200, Height = 100};
var polygon = new Polygon();
polygon.Points.Add(new Point(0, 0));
polygon.Points.Add(new Point(0, 100));
polygon.Points.Add(new Point(100, 0));
triangle = polygon;
}
private void DrawRectangleClick(object sender, RoutedEventArgs e)
{
grid.Children.Clear();
DrawRectangle(Brushes.Red);
}
private void DrawTriangleClick(object sender, RoutedEventArgs e)
{
grid.Children.Clear();
DrawTriangle(Brushes.Green);
}
private void DrawAllClick(object sender, RoutedEventArgs e)
{
grid.Children.Clear();
var action = (Action<Brush>)DrawRectangle + DrawTriangle;
action(Brushes.Blue);
}
private void DrawRectangle(Brush color)
{
rectangle.Fill = color;
grid.Children.Add(rectangle);
}
private void DrawTriangle(Brush color)
{
triangle.Fill = color;
grid.Children.Add(triangle);
}
}
}