Zmiana obiektu wywołującego dane zdarzenie

Zmiana obiektu wywołującego dane zdarzenie
HI
  • Rejestracja: dni
  • Ostatnio: dni
0

Witam,

Mam taki problem, którego nie potrafię rozwiązać - poniżej kod:

Kopiuj
...
// tutaj ustawiam zdarzenie dla "DataGridViewTable"
DataGridViewTable.DataSourceChanged += new EventHandler(this.DataGridView_DataSourceChanged);
...
Timer tic = new Timer();
...
// tutaj chciałbym ustawić zdarzenie dla Timer-a, ale tak, żeby z punktu widzenia obsługi samego zdarzenia było ono wywoływane przez "DataGridViewTable" - oczywiście poniższa linijka wygeneruje błąd
tic.Tick += new EventHandler(this.DataGridView_DataSourceChanged(DataGridViewTable, EventArgs.Empty));

Pytanie czy coś takiego jest możliwe?
Dziękuję za pomoc.

Pozdrawiam,
Hiob.

somekind
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Wrocław
0

Napisz metodę, i wywołuj ją z metod obsługi obu zdarzeń.

byku_guzio
  • Rejestracja: dni
  • Ostatnio: dni
0

Jest możliwe, ale trochę bardziej naokoło. Tworzysz normalnie metodę, która obsługuje event timera, a w nim wywołujesz zdarzenie tego DataGridViewTable

Kopiuj
tic.Tic += (sender, args) => DataGridViewTable.DataSourceChanged(DataGridViewTable, EventArgs.Empty);

Nie sprawdzałem, ale powinno działać.

//To tak jakbyś koniecznie chciał w ten sposób zrobić. Rozwiązanie somekinda jest sensowniejsze.

HI
  • Rejestracja: dni
  • Ostatnio: dni
0

Witam,

Rozwiązanie "Somekind" już stosowałem, ale problem jest dopiero z obiektami tworzonymi dynamicznie.
Mimo wszystko dziękuję!

"Byku_guzio" właśnie o to mi chodziło!!! Dziękuję!!!

Mała poprawka dla potomnych:

Kopiuj
tic.Tick += (sender, args) => this.DataGridView_DataSourceChanged(DataGridViewTable, EventArgs.Empty);

Pozdrawiam,
Hiob.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.