zugreifen Siehe auch: How to enable a timer from a different thread/classWie ein Timer von einer anderen Klasse in C#
Der Timer zu einem Formular zugeordnet ist, und ich möchte es an einem bestimmten Ort aktivieren, sondern von einer anderen Klasse. Ich will nicht, um es
Dies ist der Code, den ich für den Zugriff Memo
public string TextValue
{
set
{
if (this.Memo.InvokeRequired)
{
this.Invoke((MethodInvoker)delegate
{
this.Memo.Text += value + "\n";
});
}
else
{
this.Memo.Text += value + "\n";
}
}
}
public static void addtxt(string txt)
{
var form = Form.ActiveForm as Form1;
if(form != null)
form.TextValue = txt;
}
"Etwas geschah"; ist falsch. Es tut mir leid, dass ich nie Ereignisse von Hand schrieb. Die Linie muss zwei Parameter haben (Gegenstandsabsender und EventArgs e). Welche Parameter sollte ich führen? –
Problem 2, DoStuff() ist nicht nur öffentlich, sondern in meinem Code statisch. Ich kann nicht auf SomethingHappened zugreifen, wenn die Methode statisch ist. –
Wie gesagt, ich habe nicht kompiliert :) Sie können dies und EventArgs.Empty einfach übergeben, wenn das Ereignis ausgelöst wird. Vielleicht können Sie das Ereignis auch statisch machen (ich weiß nicht, ob das möglich ist), aber ich sollte prüfen, ob "DoStuff" statisch sein muss. –