Frage

Ich habe eine Combobox, die ich aktiviert haben = false. Wenn dies der Fall ist es bewirkt, dass es zu Schatten auf ein grauen. Ich frage mich, ob es einen Weg war ich das Kontrollkästchen Hintergrundfarbe als cornsilk halten konnte, während es nicht aktiviert ist?

Die Situation ist, dass ich eine Form, die ich mit Daten aktualisieren, wenn ein Element ausgewählt ist. Wenn der Benutzer den Datensatz bearbeiten wählt kann ich das Formular Änderungen zu übernehmen, und da es in erster Linie Textbox ist ich nur die Nur-Lese-Eigenschaft die ändern. Aber die Combobox sieht anders aus, so will ich sehen, was ich tun kann, um es gleich zu machen bleiben wie der Rest der Form ...

Irgendwelche Ideen?

War es hilfreich?

Lösung

würde ich einfach mit einem Text über sie verstecken und seine Visible-Eigenschaft auf false setzen. Dann können Sie Ihre Benutzer auf die Schaltfläche Bearbeiten klicken, Sie verstecken Ihre TextBox und zeigen Sie Ihre ComboBox mit seiner Visible-Eigenschaft auf true gesetzt.

Vielleicht möchten Sie Ihre TextBox.Text Eigenschaft aktualisieren, indem Sie den Wert auf dem ComboBox.SelectedItem Eigenschaftswert auf der SelectedItemChanged () Ereignishandler zu setzen.

Nehmen wir an, die folgende:

ComboBox cb = new ComboBox();
// Position, size and other properties are set through design.
cb.SelectedIndex = 0; // Forces selection of first item for demo purposes.

TextBox tb = new TextBox();
tb.Size = cb.Size;
tb.Position = cb.Position;
tb.Text = cb.SelectedItem.ToString();
tb.Visible = true;
tb.Readonly = true;

cb.Visible = false;

Dann klicken Sie auf die Schaltfläche Bearbeiten:

private void EditButton_Click(...) {
    tb.Visible = false;
    cb.Visible = true;
}

Und machen Sie Ihren TextBox.Text Eigenschaft Wert Ihr SelectedItem folgen:

private void ComboBox_SelectedIndexChanged(...) {
    tb.Text = cb.SelectedItem.ToString;
}

Und Sie würden die Rückseite Ihrer EditButton_Click () Ereignishandler nur tun, um Ihre Form im Read-Only-Modus zu bringen.

Andere Tipps

Sie können prüfen, JQuery UI oder andere Plugins verwenden, wenn Ästhetik der Form wichtig ist. Sie können ganzes Aussehen kontrollieren und mit dem CSS fühlen.

Hiding Combobox mit Textbox ist eine Möglichkeit, wie von Will vorgeschlagen, aber dann werden Sie absolute Breite für die Dropdown verwenden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top