Probleme mit WPF Code
-
Hallo Leute ich bräuchte mal wieder eure Hilfe.
Ich habe ein Programm mit C# WPF geschrieben.
Dieses existiert schon als C# Prog.
Ich wullte es nur noch einmal in C# WPF proggen. Nur aus Design Gründen.Nun hat ich immer Probleme mit der Null Reference Exception.
Wenn ich eine einfach Checkbox abfragen will:
if (cbVORWAHL.IsChecked == true ) { tbRCLind.IsReadOnly = false; tbRCLind.IsEnabled = true; tbRCLind.Text = ""; }
kriege ich für "cbVORWAHL" die Ausnahme.
Ich habe wie bei meinem alten Programm (C# ohne wpf) in den Eigenschaften der Checkbox eine Voreinstellung (false) vorgenommen.
Trozdem haben ich beim Compilieren das diesen Fehler.
Wenn ich das ganze Debugge sehe ich das die CB "Null" hat.Woher kommt das?
-
Ich muss dir ganz ehrlich sagen, dass ich nicht verstanden habe, was dein Problem ist. Das einzige was ich noch mitbekommen habe: Du hast im Zusammenhang mit
cbVORWAHL
irgendwo eineNullReferenceException
?Könntest du daher z.B. das mit dem C# ohne WPF weglassen. Es füllt einen grossen Teil deines Beitrages aus und liefert irgendwie nichts sinnvolles. Zudem ist C# ohne WPF gleich C#. Meinst du womöglich WinForms? Aber dann ist es wirklich völlig irrelevant hier?
Wo genau tritt die
NullReferenceException
auf? Und kannst du uns noch ein wenig Kontext liefern? Wo befindet sich dein gezeigter Code? In einem Event-Handler? Oder allenfalls vor der FunktioneInitializeComponents
im Konstrutkor?Grüssli
-
Danke für die Antwort.
Hab das Problem gefunden.Aber es ist ein generelles Problem.
Warum werden bei WPF Programmierungen die Steuerelemete (z.B. Checkbox)
mit Null inizialisiert, obwohl ich in den Eigenschaften deutlich "false" einstellt habe ?Dadurch ist dieser Fehler aufgetaucht.
-
Was meinst du mit Eigenschaften? Wenn du in XAML
IsChecked="False"
hinzufügst, dann ist der Wert auchFalse
. Werte explizit zu setzen ist in WPF allerdings meistens nicht so sinnvoll, weil du damit das Data-Binding überschreibst und somit verunmöglichst.Grüssli
-
Ja genau da könnte mein problem liegen.
Aber wie soll ich das machen das z.B. eine CBox oder eine bestimmte Farbe beim starten des Progs gewählt ist.Sonst würde ich es über die Eigenschaften oder in der Loaded Methode machen.
-
Indem du mittels Data-Binding schon die richtigen Anfangswerte setzt.