我最近开始学习 C# 编程。首先,我画了一个简单的圆圈,但是“char”-e.Graphics 有问题。我有必要的命名空间,如 System.Drawing 和 System.windows.Form 程序与 WPF 应用程序有关。我希望能够输入尺寸并按下一个按钮来绘制圆圈。
namespace drawcircle
{
/// <summary>
/// Logika interakcji dla klasy MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void circle_Click(object sender, RoutedEventArgs e)
{
int iks = int.Parse(beginx.Text);
int igrek = int.Parse(beginy.Text);
int width = int.Parse(wid.Text);
int height = int.Parse(hei.Text);
draw.circle(iks, igrek, width, height);
}
class draw
{
public static void circle(int x, int y, int width, int height)
{
Pen color = new Pen(Color.Red);
System.Drawing.SolidBrush fillblack = new System.Drawing.SolidBrush(Color.Black);
Rectangle circle = new Rectangle(x, y, width, height);
Graphics g = e.Graphics;
g.DrawEllipse(color, circle);
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
首先,您已经创建了一个方法winforms(如果您需要导入.Forms,wpf您应该知道它是错误的)。像SolidBrush和Color.Red不存在的东西wpf。在 winforms 中,解决方案将是一个非常小的变化:
如何调用:
draw.circle(10, 20, 40, 40, this.CreateGraphics());
Run Code Online (Sandbox Code Playgroud)
班级:
class draw
{
public static void circle(int x, int y, int width, int height, Graphics g)
{
Pen color = new Pen(Color.Red);
System.Drawing.SolidBrush fillblack = new System.Drawing.SolidBrush(Color.Black);
Rectangle circle = new Rectangle(x, y, width, height);
g.DrawEllipse(color, circle);
}
}
Run Code Online (Sandbox Code Playgroud)
对于 wpf,我会尝试做这样的事情:
如何调用:
draw.circle(10, 10, 100, 100, MainCanvas);
Run Code Online (Sandbox Code Playgroud)
班级:
class draw
{
public static void circle(int x, int y, int width, int height, Canvas cv)
{
Ellipse circle = new Ellipse()
{
Width = width,
Height = height,
Stroke = Brushes.Red,
StrokeThickness = 6
};
cv.Children.Add(circle);
circle.SetValue(Canvas.LeftProperty, (double)x);
circle.SetValue(Canvas.TopProperty, (double)y);
}
}
Run Code Online (Sandbox Code Playgroud)
XAML:
将您的网格更改为画布并将其命名如下:
<Canvas Name="MainCanvas">
</Canvas>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6774 次 |
| 最近记录: |