为了便于管理具有许多显示为用户控件的元素的UI,我希望我的用户控件可以从我自己的类中继承。所以,在我的用户控件中,有:
继承UserControl
我把它改成了
继承MyBaseUserControl
我添加了一个MyBaseUserControl类,它继承自UserControl。
它不会立即运行,因为UserControl的自动生成的中间文件(.g.i.vb)继承如下:
继承Global.Windows.UI.Xaml.Controls.UserControl
..但如果我然后将中间文件编辑为
继承MyBaseUserControl
它运行良好,我可以有效地识别我自己的用户控件并一般性地添加属性和方法,这正是我想要做的。
但是,当然,如果我在设计器中编辑用户控件,则使用
重新生成中间文件继承Global.Windows.UI.Xaml.Controls.UserControl
我可以手动编辑中间文件,只要重新创建它,但它看起来很乱/很危险。
有没有办法正确地做到这一点?
由于
答案 0 :(得分:0)
您需要使用MyBaseUserControl替换XAML中的UserControl字符串。 E.g。
<controls:MyBaseUserControl
x:Class="Sp.MyBaseUserControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:controls="using:Sp">
...
</controls:MyBaseUserControl>
其中Sp
是MyBaseUserControl
所在的命名空间。