gpt4 book ai didi

c# - 自定义控件错误

转载 作者:太空宇宙 更新时间:2023-11-03 11:00:55 24 4
gpt4 key购买 nike

我正在处理这个自定义控件。 (我对这部分编程很陌生。)我正在开发一个应用程序,该应用程序必须能够在用户在我自己的自定义控件中输入输入时格式化数学表达式。这就是我希望控件的外观(此图像是在 Photoshop 中制作的):

enter image description here

我不会解释我希望它具有的行为,因为这对您没有帮助,但想法是它不基于任何 Windows 控件

这是我已有的代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Support.Components
{
public partial class PartialExpressionEditor : Control
{
public PartialExpressionEditor()
{
InitializeComponent();
}

protected override void OnPaint(PaintEventArgs pe)
{
base.OnPaint(pe);

Brush background = Brushes.White;
pe.Graphics.FillRectangle(background, ClientRectangle);
background.Dispose();
}
}
}

当我尝试将其放入我的表单中时,出现此错误对话框:

enter image description here

问题出在哪里?或者为什么会出现这个错误?

最佳答案

我认为问题是你在处理系统刷:

// background.Dispose();

因为你没有创建它:

Brush background = Brushes.White;

要使用自己处理的画笔:

using (SolidBrush br = new SolidBrush(Color.White)) {
pe.Graphics.FillRectangle(br, this.ClientRectangle);
}

您可能必须退出 Visual Studio 才能取回 Brushes.White 画笔。

关于c# - 自定义控件错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17751037/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com