Caliburn 的 Screen 不能被 Window 或 UserControl 继承

Caliburn's Screen can not be inherited by Window or UserControl

我发现Window或者UserControl不能继承Caliburn的Screen基础class。我是否被迫为我的 WPF 应用程序中的每个 window/user 控件实现 IScreen 接口?

Imports Caliburn.Micro
Namespace Views
  Public Class CustomView
    Inherits Screen
  End Class
End Namespace

Base class 'Screen' specified for class 'CustomView' cannot be different from the base class 'UserControl' of one of its other partial types.

Caliburn 的 Screen 基础 class 旨在用于视图模型。

Imports Caliburn.Micro
Namespace ViewModels
  Public Class CustomViewModel
    Inherits Screen

    '...'

  End Class
End Namespace

然后用于将派生视图模型绑定到视图

Imports ViewModels
Namespace Views
  Public Class CustomView
    Inherits Window

    Public Sub New()
        '...'

        Dim viewModel As New CustomViewModel()
        DataContext = viewModel
    End Sub

  End Class
End Namespace

引用Caliburn.Micro Documentation: Screens, Conductors and Composition