Ändern Sie den Schaltflächentext nach dem Klick und ändern Sie ihn nach einem erneuten Klick wieder

7

Ich versuche, den Text eines Buttons bei jedem Klicken zu ändern.

Schaltfläche Startet als "EIN". Wenn ich es das erste Mal klicke, sollte es auf "OFF" wechseln, und wenn ich es erneut anklicke, sollte es wieder auf On wechseln.

Ich verstehe, wie ich es auf "AUS" ändern kann, wenn ich darauf klicke, aber ich bin unsicher, wie ich nach einem zweiten Klick suchen soll, damit ich den Text wieder auf "EIN" setzen kann.

Hier ist mein Code so weit:

%Vor%     
Arnulfo Arroyo 14.03.2013, 03:03
quelle

6 Antworten

7

Versuchen Sie

%Vor%

Hoffe, das hilft.

    
Pyromancer 14.03.2013, 03:07
quelle
10

Ich sehe mehrere mögliche Probleme damit und kann eine objektorientierte Lösung anbieten: Hinzufügen einer Eigenschaft, die den aktuellen "Status" verfolgt:

%Vor%

und verwenden Sie den Event-Handler, um einfach die Eigenschaft umzuschalten:

%Vor%

Auf diese Weise ist es einfacher, später auf die Informationen zuzugreifen, und Sie können On / Off einfach mit dem ersetzen, was Sie möchten - sogar globalisieren / lokalisieren Sie es bei Bedarf. Ich denke, es ist eine sehr schlechte Programmierpraxis, Code von dem Text auf dem Display abhängig zu machen ...

EDIT: Wäre es nicht sinnvoller, eine Checkbox oder einen Togglebutton zu verwenden? Anders als die visuelle Darstellung ist es anders, es macht was Sie wollen aus der Box ...

    
Roman Gruber 14.03.2013 03:16
quelle
3

Testen Sie einfach den aktuellen Text:

%Vor%

Edit: Wie Cody in den Kommentaren unten betont, funktioniert das bei der Lokalisierung nicht gut. Für etwas, das leichter lokalisiert werden kann, verwenden Sie ViewState (vorausgesetzt, der ursprüngliche Text dient dazu, Befehle zu aktivieren):

%Vor%     
MattW 14.03.2013 03:05
quelle
1

Bitte erstellen Sie eine einfache Schaltfläche. Doppelklicken Sie auf die Schaltfläche und der folgende Code wird automatisch generiert.

Schreiben Sie diesen einfachen Code und führen Sie ihn aus .....

Und siehe Magic Es wird wirklich funktionieren ......

%Vor%

Bitte Haben Sie weitere Fragen kontaktieren Sie mich bitte ....

Kontaktnummer: 9096713970 ...

    
Yogeshwar Desai 27.01.2014 05:13
quelle
0

Es gibt viele Möglichkeiten, dies zu tun.
Für mich würde ich wahrscheinlich Tag Attribut von Control verwenden, weil:

  1. Es wird in der Variablen einer Schaltfläche gespeichert. Sie benötigen keine externen Variablen
  2. Der gesamte Code kann in einer einzigen Methode geschrieben werden
  3. Sie können immer von anderen Methoden \ controls
  4. darauf zugreifen

Hier ist der Beispielcode:

%Vor%

Sie können auch den Standardwert Tag value (true oder false) festlegen und die Überprüfung auf Nullwerte entfernen. Sie können auch immer auf diese Weise darauf zugreifen:

%Vor%

Es ist nicht der beste Ansatz - es ist nur ein anderer.
Zum Beispiel hat Roman Gruber wahrscheinlich die beste Antwort gezeigt, indem er Eigenschaften verwendet, bei denen die Textänderungslogik in einen Setter eingekapselt ist.

    
Yeldar Kurmangaliyev 10.08.2015 11:57
quelle
0
%Vor%     
Kamal Shetty 25.10.2016 10:11
quelle

Tags und Links