WPF之窗体继承

常用winform的人知道,winform的窗体继承是很好用的,写一个基础窗体,直接在后台代码改写继承窗体名

但如果是WPF要继承窗体,我个人感觉理解之前:好难,不懂;但理解之后就是很简单了

关键:在修改后台代码继承窗体或者用户控件的时候,会报使用了不同的基类的错误;

        为什么会报这个错误呢?原因就是在WPF的窗体or用户控件在页面上都有根标记:<UserControl></UserContrl>或者<windows></windows>标记,也就是这个错误指的是一个窗体在后台代码中的父级引用和前台页面的父级引用不是同一个基类

       so,想通了上面的问题就好解决了,我们的目的是要继承我们自定义的custompage,那么我们只要将窗体的前台页面的跟标记也修改成custompage的标记就可以了

       so,整个窗体继承的具体做法分为三步:

       step1:后台代码继承替换,public partial class ZCPZDY : BasePage

       step2:前台页面对于我们需要继承的窗体的路径的引用,xmlns:src="clr-namespace:WpfMipLibrary.Base;assembly=WpfMipLibrary";这个步骤有个注意点,我这里的WpfMipLibrary.Base是指存放了BasePage的路径,那么有人会问:如果我直接将basepage放在一个项目下,而这个项目下之后基础窗体是否可行,答案是否定的,程序会提示,当前的命名空间下不存在编译...什么的,所以呢,对策就是多建一个文件夹;当然如果你的目录下存在其他的可以编译的内容,那还是可以的

      step3:前台页面的父级根目录的替换,用<src:BasePage></src:BasePage>替换<UserControl></UserContrl>或者<windows></windows>标记

好了,大功告成!

      

     

原文地址:https://www.cnblogs.com/zhuxiaohui/p/2780551.html