Databinding to Object Properties se casse lors du définition de Null pour s'opposer à Silverlight

StackOverflow https://stackoverflow.com/questions/5007903

  •  14-11-2019
  •  | 
  •  

Question

Échantillon de pseudocode:

<UserControl>
   <ComboBox SelectedValuePath="Id" SelectedValue="{Binding CurrentObject.Id, Mode=TwoWay}" ItemSource="{Binding Groups}"/>
   <ComboBox SelectedValuePath="Name" SelectedValue="{Binding CurrentObject.Status, Mode=TwoWay}" ItemSource="{Binding Statuses}"/>
</UserControl>

Je passe à l'objet de <MyObject> Tapez à cet UserControl, en le modifiant puis en économisant. Après avoir fait ça, je réinitialise l'état avec CurrentObject = null. En deuxième passe, ces combosés n'ont pas de valeurs sélectionnées, bien qu'il existe des données réelles. Comment puis-je le réparer?

Pas de solution correcte

Autres conseils

Vous devez toujours définir la source de données pour la liaison des données sur un objet, sinon la données ne fonctionnera pas. La liaison à NULL ne fonctionnera jamais.
Ne définissez pas CurrentObject sur NULL, mais peut-être définir le currentObject.id sur 0 et le réinitialiser à la valeur finale dès que vous le savez (par exemple sur la deuxième passe). Lorsque votre objet implémente InotifyPropertyChanged, les valeurs de l'interface utilisateur seront mises à jour.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top