Код в вашем примере не создает событие, вы создали свойство. Вам нужно использовать ключевое слово event
:
class OwnerDrawnListBox<T> : System.Windows.Forms.Control
{
// Other List Box things
public event DrawItemEventHandler DrawItemEventHandler;
public OwnerDrawnListBox()
{
// ListBox init stuff
}
// Other ListBox Stuff
}
Если он не отображается сразу в сетке свойств, возможно, вам придется перестроить свой проект. Кроме того, вы можете захотеть переименовать ваше событие, чтобы оно не совпадало с именем делегата (удалите бит «EventHandler» или назовите его как «ItemDrawn»).