Hallo,
folgendes Problem:
Ich rufe von einem Button die einen sender und ein eventargs enthaelt eine Funktion per klick auf.
Dieser ruft wieder eine Farbaenderungsfunktion auf, uebergibt den sender und das eventargs.
DOCH:
Es funktioniert nicht:
Hier mein ansatz, habs mit nem text gezeigt:
Parent.Text="asdf";
Das alles is in einem namespace
Unsere Website
iPhone Programmierung | Android Programmierung
Ergänze deinen Quellcode bitte auf die beiden genannten Methoden.
mit freundlichen Grüßen,
Tomot
Projekte: www.gesellschaftsspieler-gesucht.de
Also:
Ich habe eine Funktion die beim Betreten der Funktion aufgerufen wird:
private void txt_xoffset_Enter(object sender, EventArgs e)
{
Einheitenrechner(sender, e);
}
und der soll dann das aufrufen und in txt_xoffset den wert reinschreiben
private void Einheitenrechner(object sender,EventArgs e)
{
Parent.Text = "asdf";
}
Unsere Website
iPhone Programmierung | Android Programmierung
Hallo Ploetzi,
wieso verwendest du dann nicht:
private void txt_xoffset_Enter(object sender, EventArgs e)
{
Einheitenrechner(sender, e);
}
private void Einheitenrechner(object sender,EventArgs e)
{
txt_xoffset.Text = "asdf";
}
Ich geh davon aus, das txt_xoffset deine Textbox ist.
Bzw. wenn du es unabhängig haben willst:
((TextBox)(sender)).Text = "asdf";
Gruß
Hallo,
ich verstehe Deinen Ansatz nicht. Wozu bekommt die Methode Einheitenrechner überhaupt die Argumente sender und e? Wozu dient Parent? So, wie es dasteht, ist das der Parent der Klasse; das ist (ohne weitere Festlegung) der Parent des Formulars; das ist die Anwendung oder der Desktop oder null.
Wenn Du einen Wert in txt_xoffset "reinschreiben" willst (ist das eine TextBox?), dann musst Du natürlich diese angeben:
private void Einheitenrechner(object sender,EventArgs e)
{
txt_xoffset.Text = "asdf";
}
Vielleicht helfen Dir diese Nachfragen schon in die richtige Richtung. Jürgen
PS 1. Bitte Code markieren mit dem #-Button, das liest sich besser.
PS 2. Dein Problem klingt sehr nach fehlenden Grundlagen. Bitte verschaffe Dir diese selbst - siehe links die **Ressourcen **-, sonst wirst Du hier nicht viel Freude und Freunde finden.
PS 3. Killerhase war schneller, aber vielleicht hilft meine genauere Erläuterung zusätzlich.
Hi.
Deine Methode txt_xoffset_Enter(object sender, EventArgs e) ist vermutlich mit dem Enter Event einer Textbox verknüpft. D.h. das in dem Parameter sender eine Referenz auf deine Textbox besteht. Wenn du von dort eine Funktion aufrufen willst, die als Parameter dieses Objekt bzw. Textbox enthält, dann kannst du es zwar machen, aber ich sehe bei diesem Methodenumfang nicht viel Sinn drin.
Du könntest also entweder in der txt_xoffset_Enter Methode oder in der Einheitenrechner Methode dem Objekt den Text zuweisen. Dafür musst du aber das Objekt noch in eine Textbox casten.
Ginge z.B. so
((System.Windows.Forms.TextBox)sender).Text = "blub";
mit freundlichen Grüßen,
Tomot
Projekte: www.gesellschaftsspieler-gesucht.de
direktes aufrufen von eventbehandelnden methoden ist schlechter stil.
Ich habe eine Funktion die beim Betreten der Funktion aufgerufen wird:
methode. nicht funktion
und der soll dann das aufrufen und in txt_xoffset den wert reinschreiben
dann mach das doch? btw. warum gehst du den umweg über 2 eventmethoden? lass das event doch direkt auf die 2. methode zeigen.
((System.Windows.Forms.TextBox)sender).Text = "blub";
gerade bei eventmethoden mit der standardsignatur kommt es bei solchen impliziten casts schnell zu exceptions wenn man unvorsichtig wird. lieber explizit casten.
Danke fuer eure antworten.
ja ich weis, es heisst methode,..ich bin das von C noch so gewohnt 🙂
Unsere Website
iPhone Programmierung | Android Programmierung