0
Je souhaite que mon contrôle utilisateur modifie le texte d'un TextBlock
dans son parent. Le contrôle parent doit être capable de lier le TextBlock
à une propriété dans le contrôle utilisateur. Le TextBlock
ne lie pas actuellement.Contrôle de liaison à une propriété de contrôle utilisateur
Voici comment je suis en train d'essayer de le faire:
Contrôle parental:
<localcontrols:MyControl TextName="{Binding texttest}"/>
<TextBlock x:Name="texttest"/>
Code de contrôle de l'utilisateur:
public static readonly DependencyProperty TextNameProperty =
DependencyProperty.Register("TextName", typeof(TextBlock), typeof(MyControl), new PropertyMetadata((TextBlock)null, MyControl.TextNameValueChanged));
public TextBlock TextName
{
get
{
return (TextBlock)this.GetValue(MyControl.TextNameProperty);
}
set
{
this.SetValue(MyControl.TextNameProperty, value);
}
}
private static void TextNameValueChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
{
}
Avez-vous des erreurs de liaison lors de l'exécution dans la sortie? – mvermef
RelativeSource est probablement nécessaire – mvermef
@mvermef Je ne vois aucune erreur dans la sortie. Avez-vous des exemples de RelativeSource? – rhughes