Я работаю над этим настраиваемым контролем. (Я очень новичок в этой части программирования.) Я работаю над приложением, которое должно иметь возможность форматировать математические выражения, когда пользователь вводит ввод в свой собственный пользовательский элемент управления. Это, как я хочу, чтобы управление выглядеть (это изображение сделано в Photoshop):Ошибка пользовательского управления
Я не буду объяснять поведение я хочу его иметь, потому что это не поможет, но Идея заключается в том, что не основан ни на одном Windows Control.
Tis это код у меня уже есть:
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();
}
}
}
Когда я пытаюсь поставить его в моей форме, я получаю это диалоговое окно ошибки:
Где проблема? Или почему эта ошибка появляется?
ваш класс показывает, что ваш элемент управления наследуется от 'Control', но почему вы сказали, что оно не основано на любом управлении Windows? –
Кстати, ваш код кажется мне в порядке, за исключением того, что я буду использовать 'using (Brush background = Brushes.White) {....}' вместо вызова 'Dispose()' непосредственно, как вы это делали. Не могли бы вы попытаться удалить 'Dispose()' или хотя бы попробовать использовать стиль 'using'? –
: «Это не основано на каких-либо элементах управления Windows», я имею в виду, что это не кнопка или текстовое поле, или флажок и т. Д. – Victor