C# 在Paint事件中,WPF与Windows窗体区域.Xor的等价物是什么?
我正在尝试将此WinForms代码移动到WPF,但没有C# 在Paint事件中,WPF与Windows窗体区域.Xor的等价物是什么?,c#,c,wpf,paint,workflow-foundation,C#,C,Wpf,Paint,Workflow Foundation,我正在尝试将此WinForms代码移动到WPF,但没有Paint事件 private void OnPaint(object sender, PaintEventArgs e) { var region = new Region(new Rectangle(0, 0, this.Width, this.Height)); var rectangle = new Rectangle(0, 0, 50, 50); region.Xor(rectangle); e.Gr
Paint
事件
private void OnPaint(object sender, PaintEventArgs e)
{
var region = new Region(new Rectangle(0, 0, this.Width, this.Height));
var rectangle = new Rectangle(0, 0, 50, 50);
region.Xor(rectangle);
e.Graphics.FillRegion(Brushes.Black, region);
}
WPF在图形方面不像WinForms那样工作。你不能实际绘制形状,你必须将它们放入你的内容中 应能很好地替代
区域
。可以使用和指定复制图形代码
这就是制作矩形的方法。其他形状也有类似的类
若要实际显示
几何图形
,请将其放在一个可以用作控件内容的位置。欢迎使用SO!我已编辑了您的代码,以便正确显示。请阅读从winforms升级到WPF时所需的内容。您可以使用OnRender
覆盖实际绘制形状(以及几何体对象)。这就是Path
的工作方式。需要记住的重要一点是WPF使用保留模式图形(与GDI的即时模式相反)。