So blenden Sie Textfelder, Beschriftungen und Schaltflächen C # WPF aus

8

Ich möchte mehrere Textfelder, eine Beschriftung und eine Schaltfläche ausblenden, sobald eine Schaltfläche angeklickt wird ... aus irgendeinem Grund scheint mein Code diesen Effekt nicht zu verursachen. Nichts scheint zu passieren. Ich benutze WPF.

Hier ist mein Code:

%Vor%

Dieser Code scheint nicht zu funktionieren .. irgendwelche Ideen?

    
BigBug 27.11.2011, 07:07
quelle

5 Antworten

7

Ihr Code scheint gut zu funktionieren, das Label "Signing in ..." erscheint, nachdem alles andere verschwunden ist. Ich empfehle Ihnen, den gesamten Code aus der Datei .xaml.cs und der .xaml-Datei in ein neues Projekt zu kopieren, aber stellen Sie sicher, dass Sie nicht die erste Zeile "<Window x:Class="..." kopieren, da dies zu einem Fehler beim Klassennamen führen kann ist nicht dasselbe in dem neuen Projekt.

Für den XAML-Code schlage ich vor, dass Sie nicht so denken, wie Sie Windows-Formularanwendungen entwerfen. WPF hat das Layout-System, das seine Elemente beim Ändern der Größe des Fensters neu orientiert oder die Größe ändert. Sie sollten also keine genauen Zahlen in der Randeigenschaft angeben, als ob sie Koordinaten wären. Erstellen Sie ein Raster, erstellen Sie für jedes Element Zeilen oder Spalten und legen Sie dann die horizontale oder vertikale Ausrichtung oder die Ränder fest. Think anders als die alten Windows Formen weg.

    
Cobold 27.11.2011, 12:56
quelle
9

Ich glaube Visibility.Collapsed ist was du brauchst und nicht Visibility.Hidden .

BEARBEITEN: Haben Sie versucht, diesen Code mit UpdateLayout() Methode des übergeordneten Elements / der Komponente zu verfolgen?

    
nikola-miljkovic 27.11.2011 08:23
quelle
4

Ich habe deinen Code ausgeführt ... und er funktioniert großartig für mich. Ich habe nichts geändert (außer den Variablennamen), also denke ich, dass es ein Fehler von VS ist.

Wie gesagt nikolamm94 versuchen Sie, this.UpdateLayout(); am Ende von connect_Click hinzuzufügen. Ich habe es versucht und es funktioniert immer noch gut. Oder vielleicht ein neues VS-Projekt erstellen, das hat schon ein paar Mal für mich funktioniert.

Entschuldigung, meine Antwort ist nicht die hilfreichste, ich wollte stattdessen einen Kommentar abgeben, aber ich habe nicht genug Reputation: /

    
Flanfl 27.11.2011 11:12
quelle
0

Sie können ein Textfeld ausblenden, indem Sie zu Eigenschaften- & gt; Aussehen- & gt; Sichtbarkeit gehen und es dann auf "Versteckt" setzen

    
KANOMDOOK 09.08.2015 10:18
quelle
0

Siehe: Ссылка

Auf sichtbar gesetzt: tb1.Visibility = System.Windows.Visibility.Visible;

Zum Ausblenden: tb1.Visibility = System.Windows.Visibility.Hidden;

    
Jay 09.12.2016 16:29
quelle

Tags und Links