2009-02-24 96 views
1

我在WPF中创建了一个UserControl。此用户控件具有几个文本框,这些文本框绑定到UserControl上的proptery引用的数据库对象上的属性。 XAML中的样子:WPF依赖属性数据绑定问题

<TextBox Name="_txtFirstName" Text="{Binding Path=Contact.FirstName, UpdateSourceTrigger=PropertyChanged}"/> 

这正常工作,直到我做了跟物业变成一个依赖属性,这样我可以在ListBox绑定到选定的项目。一旦我这样做了TextBoxes的绑定停止工作。为什么是这样?

的DependencyProperty的代码是:

public static readonly DependencyProperty ContactProperty = DependencyProperty.Register(
"Contact", typeof(Contacts), typeof(ContactView)); 
+0

你可以发布DependencyProperty定义以及请 – MrTelly 2009-02-24 05:55:49

回答

5

我想出了这个问题。我忘了更改此代码:

public Contacts Contact 
    { 
     get { return _contact; } 
     set { _contact = value; } 
    } 

要这样:

public Contacts Contact 
    { 
     get { return (Contacts)GetValue(ContactProperty); } 
     set { SetValue(ContactProperty, value); } 
    } 

现在它工作正常。

0

我Google了一圈,发现this interesting page。你有为你的依赖属性定义的CallBackHandler吗?