तक पहुंचने के लिए एक ऑब्जेक्ट संदर्भ की आवश्यकता है मेरे पास टाइमर है और मैं टाइमर कॉलबैक को अलग-अलग फ़ंक्शंस में रखना चाहता हूं, हालांकि, मुझे यह त्रुटि मिलती है।गैर स्थैतिक सदस्य
एक वस्तु संदर्भ अगर मैं इन कॉलबैक घोषित गैर स्थिर क्षेत्र, विधि, या संपत्ति '' ...
का उपयोग करने की आवश्यकता है के रूप में प्रतिनिधि घटनाओं और स्थिर के रूप में सदस्य चर, यह काम करता है ठीक। क्या मुझे इसे इस तरह से छोड़ देना चाहिए?
class MainClass
{
private Timer _timer = null;
private TimeSpan _millisecs;
public static void Main (string[] args)
{
Application.Init();
MainWindow win = new MainWindow();
Label lbl = new Label();
lbl.Text = "00:00";
Table tbl = new Table(2, 2, true);
tbl.Name = "tbl";
Button btn = new Button("Start");
tbl.Attach(lbl, 0, 2, 0, 1);
tbl.Attach(btn, 0, 1, 1, 2);
Button btn_stop = new Button("Stop");
tbl.Attach(btn_stop, 1, 2, 1, 2);
btn.Clicked += StartClick;
btn_stop.Clicked += StopClick;
win.Add(tbl);
win.ShowAll();
Application.Run();
}
private void StartClick(object obj, EventArgs args)
{
if (_timer == null) {
_timer = new Timer();
_timer.Elapsed += delegate(object sender, ElapsedEventArgs e) {
_millisecs = _millisecs.Add(new TimeSpan(0, 0, 0, 0, 50));
lbl.Text = new DateTime(_millisecs.Ticks).ToString("ss:ff");
};
_timer.Interval = 50;
_timer.Enabled = true;
}
_timer.Start();
}
private void StopClick(object obj, EventArgs args)
{
_timer.Stop();
}
}
एप्लिकेशन का उपयोग क्यों न करें। रुन (नया मेनविंडो()); फिर कक्षा के अंदर की घटनाओं की सदस्यता लें? – aspark