Laden...

Inhalt einer TextBox löschen

Erstellt von Millersoft vor 16 Jahren Letzter Beitrag vor 7 Jahren 23.720 Views
M
Millersoft Themenstarter:in
113 Beiträge seit 2006
vor 16 Jahren
Inhalt einer TextBox löschen

Kurze Frage:

Wie lösche ich noch mal den Inhalt einer Textbox?

TextBox1.?.....

Mfg Millersoft

MSC

M
253 Beiträge seit 2006
vor 16 Jahren

textBox1.Clear();

msdn bitte :>

M
Millersoft Themenstarter:in
113 Beiträge seit 2006
vor 16 Jahren

bei msdn find ich das nie..

danke🙂

MSC

G
18 Beiträge seit 2005
vor 16 Jahren

Alternative:

textBox1.Text = "";

Es gibt keinen Löffel!

U
237 Beiträge seit 2007
vor 16 Jahren

oder

textBox1.Text = string.Empty;

heute code ich, morgen debug ich und übermorgen cast ich die königin auf int

R
2 Beiträge seit 2016
vor 7 Jahren

Hallo, sorry wegen der Leichenfledderei, aber was tue ich denn, wenn keine der Methoden funktioniert?

Meine Situation ist Folgende: Ich habe drei Buttons. Einer befüllt pictureBox2 mit einem random Bild. Danach wird eine Funktion aufgerufen, die, je nach Inhalt der pb einen passenden Text in einer textBox ausgibt. picture- und textBoxen habe ich jeweils drei.

Der erste Button tut dieses:

private void button1_Click(object sender, EventArgs e)
        {
            pb1.Image = null;
            tb1.Clear();
            pb3.Image = null;
            tb3.Clear();

            string bilderpfad = System.IO.Path.GetDirectoryName(Application.ExecutablePath) + @"\runen\";
            initializeImages();
            pb2.ImageLocation = files[currentIndex];
            beschreibung();
        }

Das funktioniert leider nur bedingt - die pictureBoxen werden geleert, während der Text in den textBoxen stehen bleibt. Außer natürlich der in der pb2, der ändert sich wie gewünscht.

Der Witz ist, dass ich einen Resetbutton habe mit diesem Inhalt:

private void resetbutton_Click(object sender, EventArgs e)
        {
            tb1.Clear();
            tb2.Clear();
            tb3.Clear();
            pb1.Image = null;
            pb2.Image = null;
            pb3.Image = null;
        }

Und das funktioniert einwandfrei. Überseh ich da was? Ich habe alle hier vorgeschlagenen Methoden verwendet.

463 Beiträge seit 2009
vor 7 Jahren

Naja, bei so cleveren Namengebungen wie tb1, tb2 und tb1 usw. kann man schon mal durcheinander kommen...
In dem Event button1_Click() löscht du aber tb2 überhaupt nicht - dies machst du nur mit deinem Resetbutton...

Noch dazu wäre schön zu wissen, was die Methode beschreibung() macht - änderst du dort evtl. die Texte der Textboxen nochmals ab?

Auch Namen wie button1 sind nicht gerade förderlich - dabei ist eine saubere Benamung doch wirklich kein Hexenwerk und kostet kaum Zeit.

R
2 Beiträge seit 2016
vor 7 Jahren

Ich weiß nicht, was daran so schwer ist - tb1 ist textBox1, pb1 ist pictureBox1 - wenn ich dich allerdings hier schon verloren habe, sollte ich vielleicht noch auf weitere Antworten warten. Bei drei Buttons kommt man jetzt auch nicht so fürchterlich schnell durcheinander, die stehen direkt nebeneinander und sind im Quelltext durchnummeriert. Außerdem soll die tb2 soll doch gar nicht gelöscht werden, es geht um 1 und 3.

Ich schreibs aber gerne noch ausführlicher:

Ich habe drei TextBox-Elemente. Die heißen tb1, tb2 und tb3. Ich habe drei PictureBox-Elemente, die heißen pb1, pb2 und pb3.
Weiterhin habe ich drei Buttons. button2 befüllt die drei Picturebox-Elemente aus einem Array. button1 befüllt nur die mittlere, also pb2, mit einem Bild. Die Textbox jeweils unterhalb der Picturebox befüllt sich mit der entsprechenden Beschreibung des Bildes der darüber liegenden Picturebox, daher die Funktion "beschreibung()". In dieser Funktion steht z.B. sowas (für die pb/tb2 und 3 kommt das Ganze auch noch):

string bilderpfad = System.IO.Path.GetDirectoryName(Application.ExecutablePath) + @"\runen\";

            if (pb1.ImageLocation == bilderpfad + "01othel.gif")
            {
                tb1.Text = othel;
            }

Mit dem Resetbutton werden alle Picture- und Textboxen geleert.

Die Befüllung der zugehörigen Textboxen klappt mit Button 1 und 2 auch.

Die tb2 muss nicht von den buttons 1 und/oder 2 gelöscht werden, denn der Inhalt wird jeweils überschrieben. Button1 würfelt ein Bild aus, das in der pb2 (also in der Mitte) dargestellt wird. Durch die Funktion "beschreibung()" wird dann der entsprechende Erklärungstext in die darunterliegende Textbox geschrieben. Klickt man den Button nochmal, wird beides überschrieben. Mit Button2 werden alle Pictureboxen beschrieben, die Textboxen entsprechend auch.

So, hoffentlich war das ganze Getippe jetzt nicht umsonst. Um nun zu meiner Ursprungsfrage zurück zu kommen:

Der Button1 soll die Picture- und Textboxen 1 + 3 leeren. Bei den Pictureboxen klappt es, bei den Textboxen nicht. Ich habe alle hier im Thread gezeigten Methoden versucht.

3.170 Beiträge seit 2006
vor 7 Jahren

Hallo,

dem Code nach, den Du hier gezeigt hast, deutet alles darauf hin, dass nach den Clear()-Aufrufen der Text der TextBoxen nochmal von anderswo gesetzt wird - wie das Stefan.Haegele auch schon angedeutet hat.
Hierfür kommen vorzugsweise die Methoden initializeImages() und beschreibung() in Frage.

Also solltest Du jetzt mal mit dem Debugger Schritt für Schritt durchgehen und schauen, wo und warum das passiert.

Gruß, MarsStein

Non quia difficilia sunt, non audemus, sed quia non audemus, difficilia sunt! - Seneca

463 Beiträge seit 2009
vor 7 Jahren

Ich weiß nicht, was daran so schwer ist - tb1 ist textBox1, pb1 ist pictureBox1

Nochmals - dies ist keine gute Benamung - in 2 Monaten wirst du nicht mehr wissen was tb1 für eine Funktion hat. Oder was button1 genau machen soll... Ordentliche Benamung von Anfang an erspart viel Ärger...

wenn ich dich allerdings hier schon verloren habe, sollte ich vielleicht noch auf weitere Antworten warten. Bei drei Buttons kommt man jetzt auch nicht so fürchterlich schnell durcheinander, die stehen direkt nebeneinander und sind im Quelltext durchnummeriert

Das einzige was du verloren hast ist der Überblick über deinen Sourcecode... Dein Problem sollte du übrigens mit Hilfe des Debuggers in max. 5 Minuten lösen können.

Viel Glück
Stefan