2017-05-08 2 views
0

Ich möchte die Vordergrundfarbe von Optionsfeldtexten ändern, wenn die Eigenschaft Enabled des Gruppenfelds auf false gesetzt ist. Die deaktivierte Farbe ist so absurd dunkel, dass Sie den Text in diesem Zustand nicht lesen können. Ich habe viele Dinge ausprobiert (z. B. den System-deaktivierten Farbmodus außer Kraft setzen) ohne Erfolg.Entfernen eines Objekts aus einem Steuerungsfeld

Ich habe keine andere Wahl, als diese Art von Steuerelementen zu verwenden, also suche ich nach einem Workaround. Meine Idee war es, dem Text eine hellgraue Beschriftung zu überlagern, aber dies verursacht Fehler bei der Initialisierung der Kontrollbox.

Ich habe versucht, den folgenden Code das Etikett aus dem übergeordneten Steuerkasten zu bekommen und dieses Problem zu vermeiden:

RadioButtonLabel.Parent= Main_menu.Activeform; 

ich keine Fehler mehr, aber das Label jetzt grundsätzlich in Laufzeit verschwinden.

Irgendeine Lösung?

+0

Was Sie sind Targeting: WinForms, WPF, ASP ..? __Always__ tag Ihre Frage richtig! – TaW

+0

Können Sie das GroupBox.Enabled-Ereignis nicht verwenden. Wenn ja, mache RadioButton = Somecolour, wenn nicht aktiviert, dann eine andere Farbe? – GandRalph

+0

Ich verwende tatsächlich die RadioButton.Enabled-Eigenschaft. RadioButton.ForeColor-Eigenschaft wird von der aktivierten Eigenschaft überschrieben – espressif

Antwort

0

statt dunkle Farbe verwenden, versuchen Sie dies mit: (dies ist nur eine Idee Code)

if(groupbox.enable == false) 
{ 
radiobutton.text = ""; //it means show nothing 
} 
else 
{ 
radiobutton.text = "Whatever you like"; 
} 
+0

Danke, aber das ist nicht genau das, wonach ich bin. Ich muss Änderungen der Benutzeroptionen verhindern, aber ich möchte, dass sie die Optionen, die sie in der vorherigen Phase ausgewählt haben, lesen können. Das Traurige daran ist, dass die Nur-Lese-Option nur für Textfelder gilt, nicht für Optionsfelder ... – espressif

+0

@espressif Sie können es aktivieren oder deaktivieren? Ich weiß nicht genau, was Ihr Zweck ist – Serenade

+1

Das Projekt ist eine 2-Stufen-Anwendung für klinische Zwecke. Die erste Einstellung erlaubt das Setzen von Parametern und die zweite besteht darin, den Test tatsächlich auszuführen, so dass die Parameter in diesem Stadium nicht vom Benutzer geändert werden können. Trotzdem kann der Administrator die Einstellung, die er in der ersten Phase vorgenommen hat, lesen. – espressif

Verwandte Themen