无法在"设计"视图中编辑ReactiveUserControl

Bri*_*ins 6 wpf xaml reactiveui

我将UserControl更改为ReactiveUserControl,现在我无法查看设计视图.有什么办法可以让设计师使用ReactiveUserControl吗?

Eug*_*lik 10

当控件或窗口直接从泛型类继承时,Visual Studio设计器会出现问题.这也是WinForms的一个非常常见的问题.您可以通过定义位于泛型ReactiveUserControl和控件之间的另一个非泛型类来解决此问题:

public partial class MyUserControl : MyUserControlBase
{
    public MyUserControl()
    {
        InitializeComponent();
    }
}

public abstract class MyUserControlBase: ReactiveUserControl<MyUserControlViewModel>
{
}
Run Code Online (Sandbox Code Playgroud)

在XAML中,我们的根对象元素被定义为基本元素(MyUserControlBase),其类声明连接到上面定义的部分类(MyUserControl):

<myNameSpace:MyUserControlBase
    x:Class="MyNameSpace.MyUserControl"
    xmlns:myNameSpace="clr-namespace:MyNameSpace"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
Run Code Online (Sandbox Code Playgroud)