Comment puis-je étendre un contrôle existant (ComboBox dans mon cas) pour inclure une nouvelle propriété que je peux lier à une propriété sur mon modèle de vue?Liaison d'une nouvelle propriété sur le contrôle personnalisé pour afficher le modèle
J'ai une propriété Dépendance sur la classe du contrôle comme suit:
public class MyComboBox : ComboBox
{
public static readonly DependencyProperty MyTextProperty =
DependencyProperty.Register("MyText", typeof(string), typeof(MyComboBox));
public string MyText
{
get
{
return GetValue(MyComboBox.MyTextProperty).ToString();
}
set
{
SetValue(MyComboBox.MyTextProperty, value);
}
}
et que vous voulez lier à elle déclarative de XAML comme ceci:
<MyComboBox MyText="{Binding MyTextOnViewModel,
UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"/>
La liaison ne va pas fonctionner, des idées pourquoi ??
Merci.
vos premiers points une faute de frappe, désolé, malade vérifier le reste maintenant – andrej351
ok tout bon. merci pour l'aide man, mais j'ai eu mon contrôle personnalisé dans une cellule tamplate dans une grille de données, que j'ai oublié de mentionner. Vous venez de modifier la liaison à {Binding DataContext.MyTextOnViewModel, RelativeSource = {RelativeSource FindAncestor, AncestorType = {x: Type Pages: MyPage}}} – andrej351