WPF Combobox SelectedItem pas arriver ensemble?
J'ai un ComboBox qui a son ItemsSource lié à une statique List<CustomSettings>
d'options. La zone de liste déroulante est partie d'un formulaire qui est lié à un CustomObject de classe, et l'une des propriétés de classe est un CustomSettingProperty.
Je voudrais lier la SelectedItem de la zone de liste déroulante de la propriété spécifiée dans la CustomObject, cependant SelectedItem="{Binding Path=CustomSettingProperty}"
n'est pas le paramètre par défaut de l'élément sélectionné. À l'aide de points d'arrêt, je peux voir que c'est l'appel de la get;
méthode, donc je pense que le problème est peut-être dans le fait que la CustomSettingProperty est créé séparément de la List<CustomObject>
donc WPF ne pense pas que c'est le même élément.
Est-il un moyen facile de faire cela? Ou peut-être une alternative depuis l'CustomSettings classe contient un Id?
OriginalL'auteur Rachel | 2010-08-17
Vous devez vous connecter pour publier un commentaire.
Si l'élément sélectionné n'est pas la même instance qui est contenue dans la Liste, vous devez remplacer Equals() dans le CustomObject de laisser la zone de liste déroulante sais que c'est le même objet.
Si c'est la même instance, c'est peut-être seulement une chose simple comme paramètre de la BindingMode de TwoWay:
J'ai le même problème mais j'ai été substituée
Equals()
Comment puis-je réglage de la BindingMode? Note: je suis à l'aide de c# et WinformsMode TwoWay par défaut n'est-il pas?
À partir de MSDN > programmes façon de déterminer si une propriété de dépendance se lie d'une manière ou deux-chemin par défaut est d'obtenir les métadonnées de la propriété de la propriété en utilisant GetMetadata et de vérifier ensuite la valeur Booléenne de la BindsTwoWayByDefault de la propriété.
Merci @Heinz K mais comment remplacer Equals()? Pouvez-vous veuillez donner l'exemple.
OriginalL'auteur Heinz K