Wenn Variable gesetzt => Aktion

19bluedragon99

Grünschnabel
Also ich bin erst nur Anfänger im programmieren mit C# aber ich wollt mal fragen wie man die ganze Zeit überprüft ob eine Variable gesetzt wird. Wenn die Variable dann gesetzt wird soll dann eine Aktion stattfinden. Ich glaub, dass das eig ganz einfach is aber ich hab kp wie man das machen soll :D
 
Hallo,

Die einzige Möglichkeit sowas zu implementieren ist glaub ich sich selbst ein Event zu schreiben und dieses z.B.: im Setter der Variable aufzurufen. Die Aktion die du ausführen möchtest kannst du dann in einem EventHandler implementieren.

Aber erzähl mal kurz was du vor hast, vielleicht kann man dann das Problem überhaupt von einer anderern Seite angehen.
 
mit dem Event versteh ich schonmal garnoichts aber egal^^
Also... ich habe 2 Windows Form anwendungen, wenn dann bei der 2 form auf einen knopf gedrückt wird soll dann bei der ersten form eine variable angehen. wenn diese variable dann an ist soll dann bei form 1 eine aktion ablaufen

vieleicht kann man ja machen dass machen dass wenn man auf den knopf drückt direkt die aktion in der anderen form abläuft und die variable dann garnicht nötig ist

ich hoffe du hast halbwegs verstanden was ich meine :)
 
Na wenn das so ist:

Du kannst den Button auf Form2 als public definieren, dann kannst du dir in der Form1 einen EventHandler für das ClickEvent registrieren und dann dort die Aktion ausführen.
Du solltest dir aber schon ein bisschen was über Events anschauen, sonst wirst du mit WinForms noch ziemlich Probleme kriegen.
 
Mit welchen Unterlagen hast du denn bis jetzt C# gelernt? DAS Nachschlagewerk für .Net ist auf jeden Fall die MSDN Library.
Bei Büchern und so hab ich auch keine Ahnung was momentan aktuell und gut ist.
 
public void Form2.button1_Click(object sender, EventArgs e)

wo würdest du das hinschreiben? bzw. wo registrierst du dir den EventHandler "button1_Click"? Einfach nur eine Funktion hinzuschreiben reicht nicht, man muss auch irgendwo noch das Click-Event mit der Funktion verknüpfen.
 
also dass man dann in form 1 eingibst:


public void Form2.button1_Click(object sender, EventArgs e)
{
//Anweisungen
}

oder geht das nicht?
 
Nein, das geht nicht. Die einzige Lösung die funktionert ist die von mir schon oben beschriebene: In der Form2 den Button-Modifier auf public setzen und dann in der Form1.cs irgendsowas bauen:
C#:
public partial class Form1 : Form
	{
		Form2 form2;

		public Form1()
		{
			InitializeComponent();

			form2 = new Form2();
			//Eventhandler an das Click-Event binden
			form2.button1.Click += new EventHandler(button1_Click);
		}

		// EventHandler
		void button1_Click(object sender, EventArgs e)
		{
			//Hier der Code der beim Clicken auf den Button ausgeführt werden soll
		}
	}
 
Zuletzt bearbeitet von einem Moderator:

Neue Beiträge

Zurück