2016-05-03 11 views
1

Ich baute ein CompositeControl in ASP.Net und jetzt habe ich Probleme, den ViewState von 3 Instanzen des Control auf der Hosting-Seite zu pflegen. Mein CompositeControl hat eine Eigenschaft "HeaderText" und alle 3 Instanzen meines CompositeControls haben den Wert der ersten Kontrollinstanz auf der Seite.Probleme mit ViewState von CompositeControl

Zum Beispiel: Wenn das erste Steuerelement HeaderText = "Test 1" hat, haben alle anderen Steuerelemente auch HeaderText = "Test 1".

Während des Debugging habe ich festgestellt, dass der Mengenoperator der Eigenschaft 2 Mal aufgerufen wird. Wenn ich den Satz Operator mit Debug.WriteLine trace() gibt dann sieht die Ausgabe wie:

HeaderText of Control 1 = "Test 1" 
HeaderText of Control 2 = "Test 2" 
HeaderText of Control 3 = "Test 3" 
HeaderText of Control 1 = "Test 1" <-- Why is the set operator called 2 times for each Control? 
HeaderText of Control 2 = "Test 1" 
HeaderText of Control 3 = "Test 1" 

Antwort

0

Nur falls jemand anderes dieses Verhalten erlebt: Ich auf das Debuggen von „externen Code“ gedreht und herausgefunden, dass Ich habe die Eigenschaft versehentlich auch zur Skin-Datei hinzugefügt. Daher wurde der set-Operator des HeaderText 2 mal aufgerufen ... schwer diesen Fehler zu finden.