Управляющее событие из базового класса
У меня есть несколько DataGridView на нескольких формах. Когда пользователь выбирает строки, он покажет некоторые данные/результат, но есть условие. Если это условие проходит, то отображается только результат.
Я могу проверить состояние каждого события каждого DataGridView. Но я создаю пользовательский элемент управления, наследуя DataGridView. И хочу поставить проверку состояния на базовый класс. Если условие передано базовому классу, то оно вызовет событие дочернего класса, иначе оно заблокирует или не передаст запуск события.
Я также могу написать отдельное событие с этим условием, но в качестве обучения или фонда я хочу написать фактическое событие.
Заранее спасибо.
Что я уже пробовал:
/*Inherited base Class*/ public partial class MyDataGridView : DataGridView { public bool ShowData = new bool(); public new event System.EventHandler SelectionChanged; public CustomDataGridView() { InitializeComponent(); } protected override void base_SelectionChanged(object sender, EventArgs e) { if(ShowData) { //Want to raise/pass/trigger event on child class if (this.SelectionChanged != null) this.SelectionChanged(sender, e); } else { //do not want to raise/pass/trigger event on child class } } } /*On Win Form*/ public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void MyDataGridView1_SelectionChanged(object sender, EventArgs e) { MessageBox.Show("My Result........"); } }