Я хочу добавить настраиваемое свойство к кнопке в форме окна. В настоящее время я использую следующий код для создания моей логики. но я хочу создать значение перечисления для кнопки управления.
btnPartyDetails.Text = "View";
{}
btnPartyDetails.Text = "Add";
{}
btnPartyDetails.Text = "Delete";
{}
btnPartyDetails.Text = "Edit";
{}
Я хочу выполнить какое-то действие на основе этих значений, и я хочу создать настраиваемое свойство для кнопки, чтобы я мог использовать перечисление вместо использования текстового соответствия.
btnPartyDetails.ActionType= ActionType.View;
{}
btnPartyDetails.ActionType= ActionType.Add;
{}
btnPartyDetails.ActionType= ActionType.Delete;
{}
btnPartyDetails.ActionType= ActionType.Edit;
{}
Я хочу сделать что-то вроде этого, где ActionType будет моим enum
.
Я также хочу создать собственное событие на основе установленного значения. Как я могу это сделать?
Вы можете наследовать от элемента управления, которого хотите, и расширить его, как хотите. AFAIK ни один из элементов управления не является закрытым классом в winform. Таким образом, вы можете добавить дополнительные свойства и события. Что-то вроде:
public class MyTextBox : System.Windows.Forms.TextBox {
public string MetaMessage {get;set;}
public event SomeCoolEventHandler CoolEvent;
public delegate SomeCoolEventHandler(object sender, CoolEventArgs args);
}
public class CoolEventArgs: EventArgs{
....
}
Вам нужно вывести новый класс из кнопки