Gibt es einen Fall, wenn IsChecked Eigenschaft auf WPF CheckBox null?Warum ist die IsChecked-Eigenschaft in WPF-CheckBox nicht boolesch?
Ich denke, das wird meine Frage aus dem Titel der Frage beantworten.
Gibt es einen Fall, wenn IsChecked Eigenschaft auf WPF CheckBox null?Warum ist die IsChecked-Eigenschaft in WPF-CheckBox nicht boolesch?
Ich denke, das wird meine Frage aus dem Titel der Frage beantworten.
Es ist null, wenn Sie nicht wissen, ob seine geprüft oder nicht: http://msdn.microsoft.com/en-us/library/system.windows.controls.primitives.togglebutton.ischecked.aspx
In vielen Systemen eine Checkbox wie dies im Schatten statt, kontrolliert zu werden.
Wenn das der Fall ist, dann ist es wahrscheinlich eine Drei-Staaten-Checkbox, schauen Sie sich http://msdn.microsoft.com/en-us/library/system.windows.forms.checkbox.threestate.aspx für eine Erklärung.
Null bedeutet, dass die CheckBox unbestimmt ist (weder leer noch überprüft, sondern es hat entweder eine Linie, die durch sie oder die Box hat ein graues Feld im Inneren)
Wenn wir einen Wert von DB binden möchten und Wenn dieser Wert null ist, müssen wir das auch behandeln. Ein boolescher DB-Wert kann True, False oder NULL sein. Also muss das UI-Kontrollkästchen auch die dortigen Zustände behandeln. Aus diesem Grund hat WPF CheckBox drei Zustände.
Dies scheint ganz rückwärts als Antwort - das Verhalten der Benutzeroberfläche wird nicht durch die Tatsache, dass SQL bestimmt hat das Konzept von NULL. –
@PhilipKendall Das Verhalten der Benutzeroberfläche wird durch DB-Werte bestimmt, wenn wir verbindliche Konzepte in WPF verwenden. –
Die Frage ist, warum das Kontrollkästchen drei Status hat. In der DB kann die boolesche Spalte drei Werte haben (True, False, Null), die der UI zugeordnet werden können. Deshalb hat Checkbox drei Zustand .... Was mit der Antwort falsch ist, irgendein, warum dieses herabgestuft wird ... !!! –
Ich glaube, ich musste nur in der offiziellen Dokumentation suchen ... aber ich stehe mehr auf stackoverflow dann MSDN in diesen Tagen :) –