wpf自定义控件或窗体继承问题,继承之后出现不能是 XAML 文件的根

我们在WPF中创建baseWindow或者想继承一个自定义的USERCONTROL时,经常会遇到 “继承之后出现不能是 XAML 文件的根” 这样的错误。

原因是继承类如果重新定义窗体内容会冲掉基类的所有内容:

 

解决方法:1.基类设成一个继承Window或者UserControl普通的类文件,不要创建成带XAML的文件。

      或者 利用自定义控件,创建各自的ControlTemplate,

     

 

     2.在继承窗体或控件中 添加OnContentChanged方法,

      然后把基类窗体或控件的内容填充进去,下面给出一个例子:

    解决方法:

 

posted @ 2018-05-11 17:52  GarySun  阅读(2121)  评论(0编辑  收藏  举报