.net - 如何在无法访问 System.Windows.Forms.PaintEventArgs 命名空间的情况下在 Winform 上绘图?

标签 .net winforms drawing delphi-prism paintevent

从我迄今为止在程序中所做的来看,似乎在 winform 上绘制任何内容的唯一方法是通过 System.Windows.Forms.PaintEventArgs。如果您无权访问这些参数或此命名空间,并且只能访问 winform,该怎么办?如何在 winform 上绘制(例如矩形等形状)。

提前致谢。

最佳答案

如果您想在 Paint 事件之外在表单(或任何其他控件)上绘图,则必须获取该控件的 Graphics 对象。然后就可以随心所欲地画画了。但请注意,下次出现绘画消息时,您所绘制的内容可能会被删除。

在表单上绘图:

using (Graphics g = this.CreateGraphics())
{
    // do all your drawing here
}

关于.net - 如何在无法访问 System.Windows.Forms.PaintEventArgs 命名空间的情况下在 Winform 上绘图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7807671/

相关文章:

c# - 取消backgroundworker

c# - 获取winforms文本框的光标位置

c# - .NET VS2010 DataGridView AutoSizeColumnsMode 设置禁止用户调整大小

c# - 使用 ListView.Item.RemoveAt() 时不会删除指定的项目

c# - 不转换时出现 InvalidCastException

python - 改进 wxPython OnPaint

javascript - 在 HTML 中单击按钮时,JS 变量不会更新

c# - 如何在 Visual Studio 2017 解决方案中创建 "content only"项目?

c# - 在 C# 中用鼠标画线的正确方法是什么

c# - c# d1p1 和 xmlns 中的 XML 序列化