Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю
На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн Троелсен Эндрю, "Язык программирования C#9 и платформа .NET5" бесплатно, без регистрации.
<DockPanel LastChildFill="True">
<ToolBar DockPanel.Dock="Top" Name="mainToolBar" Height="50">
</ToolBar>
<Canvas Background="LightBlue" Name="canvasDrawingArea"/>
</DockPanel>
picture
Заполните элемент
ToolBar
RadioButton
Shape
RadioButton
GroupName
<ToolBar DockPanel.Dock="Top" Name="mainToolBar" Height="50">
<RadioButton Name="circleOption" GroupName="shapeSelection"
Click="CircleOption_Click">
<Ellipse Fill="Green" Height="35" Width="35" />
</RadioButton>
<RadioButton Name="rectOption" GroupName="shapeSelection"
Click="RectOption_Click">
<Rectangle Fill="Red" Height="35" Width="35" RadiusY="10" RadiusX="10" />
</RadioButton>
<RadioButton Name="lineOption" GroupName="shapeSelection"
Click="LineOption_Click">
<Line Height="35" Width="35" StrokeThickness="10" Stroke="Blue"
X1="10" Y1="10" Y2="25" X2="25"
StrokeStartLineCap="Triangle" StrokeEndLineCap="Round" />
</RadioButton>
</ToolBar>
Как видите, объявление объектов
Rectangle
Ellipse
Line
Fill
Rectangle
RadiusX
RadiusY
Объект
Line
X1
Х2
Y1
Y2
Line

С помощью окна Properties (Свойства) среды Visual Studio создайте обработчик события
MouseLeftButtonDown
Canvas
Click
RadioButton
Canvas
Window
public partial class MainWindow : Window
{
private enum SelectedShape
{ Circle, Rectangle, Line }
private SelectedShape _currentShape;
}
В каждом обработчике
Click
currentShape
SelectedShape
private void CircleOption_Click(object sender, RoutedEventArgs e)
{
_currentShape = SelectedShape.Circle;
}
private void RectOption_Click(object sender, RoutedEventArgs e)
{
_currentShape = SelectedShape.Rectangle;
}
private void LineOption_Click(object sender, RoutedEventArgs e)
{
_currentShape = SelectedShape.Line;
}
Посредством обработчика события
MouseLeftButtonDown
Canvas
х
у