首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

来,WPF自定义控件中依赖属性绑定UserControl

2012-12-17 
高手进来,WPF自定义控件中依赖属性绑定UserControl我有一个自定义控件Class MyUserControl,里面有一个属性

高手进来,WPF自定义控件中依赖属性绑定UserControl
我有一个自定义控件Class MyUserControl,
里面有一个属性MyPage,类型为UserControl。为了实现绑定,我把它定义成了依赖属性。
public class MyControl
{
    public static readonly DependencyProperty MyPageProperty = DependencyProperty.Register(
            "MyPage",
            typeof(UserControl),
            typeof(MyControl),
            new PropertyMetadata(new PropertyChangedCallback(MyPageChangedCallback))
            );


    public UserControl MyPage
        {
            get
            {
                
                return GetValue(MyPageProperty) as UserControl;
            }
            set
            {
                if (MyPage!= value)
                {
                    SetValue(MyPageProperty, value);
                    //
                }
            }
        }
  //省略其它代码
}
在xaml中,我想这样使用。我用的mvvm模式,View在ViewModel中定义了,为UserControl类型。
<MyControl MyPage="{Binding View}"/>
为什么不显示呢?
求高手帮忙。
[最优解释]
在View中的构造函数里加一行,

this.DataContext=this;

[其他解释]
"将Page Binding到一个控件上是不可以的,因为你的view有很多属性。而且你这种实现很怪,你要实现什么效果呢?
一般情况你把一个ContentControl的Content Binding到ViewModel中,然后再Xaml中为这个ViewModel写一个DataTemplate就可以了。不需要你那么麻烦写DependencyProperty。"
这是我在博客园提问时有人的回复,我觉得有道理。开始的路我就走偏了。

热点排行