J'ai un contrôle personnalisé qui a un DependencyProperty MyAnimal - Je lie une propriété animale sur mon ViewModel à MyAnimal DependencyProperty.wpf comment savoir quand la liaison de données est terminée?
Je suis coincé une zone de texte sur le contrôle afin que je puisse déclencher un événement - à chaque fois que je déclenche l'événement la propriété MyAnimal a été mis - si je mets un point d'arrêt sur le poseur de la propriété MyAnimal il ne fait jamais tiré !
Je suppose qu'il me manque quelque chose de fondamental au sujet des propriétés de dépendance WPF/Binding ?!
Et donc ma question est, si je ne peux pas utiliser le Setter comment puis-je savoir quand il a été réglé? Si je mets si je mets un point de rupture après InitializeComponent() son null et j'ai jeté un coup d'oeil pour voir si theres un événement un peut raccorder à - DatabindingFinished ou semblable? mais ne peut pas voir ce que ce serait ...
Quelqu'un peut-il vous aider s'il vous plaît?
Merci,
Andy
public partial class ControlStrip
{
public ControlStrip()
{
InitializeComponent();
}
public Animal MyAnimal
{
get
{
return (Animal)GetValue(MyAnimalProperty);
}
set
{
SetValue(MyAnimalProperty, value);
}
}
public static readonly DependencyProperty MyAnimalProperty =
DependencyProperty.RegisterAttached("MyAnimal", typeof (Animal), typeof (ControlStrip));
private void TextBox_TextChanged(object sender, System.Windows.Controls.TextChangedEventArgs e)
{
var myAnimal = MyAnimal;
MessageBox.Show(myAnimal.Name);
}
}
Une question - pourquoi utilisez-vous RegisterAttached et non inscrire? Il ne semble pas que cela devrait être une propriété jointe, mais plutôt un DP normal ... –
c'est un très bon point, bravo - copier et coller! –