Question : MVVM WPF: Binding Problems

Hello,

I just started with MVVM and have some problems:

1. Why is the CustomerName selected in the ComboBox displayed in the TextBox too ?
2. When I delete a selected customer in the ComboBox after that action no customer is set as selected anymore in the ComboBox, why?
3. When I try to enter a value in the TextBox I get immediately a exception ->

A first chance exception of type 'System.NullReferenceException' occurred in MVVM.WPF.Sample.exe
System.Windows.Data Error: 8 : Cannot save value from target back to source.

Code Snippet:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
153:
154:
155:
156:
157:
158:
159:
160:
161:
162:
163:
164:
165:
166:
167:
168:
169:
170:
171:
172:
173:
174:
175:
176:
177:
178:
179:
---------
VIEW:
---------
 

	
	
		
	
    
		 
	
	
    
        
        
            
            
            
        
        
            
           
            
            
            
          
            
                
            
            
            

Answer : MVVM WPF: Binding Problems

Hi,
I don't know your view model, but I think these are the reasons:

ad 1) You're binding your text box to the property CustomerName of your view model. I guess that this property returns the name of the property SelectedCustomer. Therefore the textbox shows the name of the selected item.

ad 2) When you delete one item from your combobox, you might set the property SelectedCustomer of your view model to null. As you are binding your SelectedItem property of your combobox to that property, no item will be selected.

ad 3) You have an UpdateSourceTrigger set to PropertyChanged which is raised on every change of the entered text. So, if you enter a char, the binding system will get an alert. You will receive an exception (see my response to your question 1) if CustomerName gets or sets the name of the property SelectedCustomer. If SelectedCustomer is null (when there is no combobox selection) you will receive a NullReferenceException as no object exists which properties can be set.

I hope that helps.
Random Solutions  
 
programming4us programming4us