Microsoft.Toolkit.Forms.UI.Controls 找不到 Windows 运行时类型 'Microsoft.Toolkit.Win32.UI.XamlHost.IXamlMetadataContainer'
Microsoft.Toolkit.Forms.UI.Controls Could not find Windows Runtime type 'Microsoft.Toolkit.Win32.UI.XamlHost.IXamlMetadataContainer'
我创建了一个新的“Windows Forms App”:
现在我从 NuGet 安装 Microsoft.Toolkit.Forms.UI.Controls。
它需要这些依赖项:
点击“我接受”后,接下来发生的是错误消息“无法启动设计工具服务器进程”。显示:
我 select 选项卡中的 Form1 设计器,工具箱现在显示新工具:
然而,设计器不见了,当我再次尝试调出它时,提示“此项目不支持预览”。每次单击 Form1.vb -> View Designer:
时都会出现
这个过程我重复了好几次。
当我从调试 x86 切换到调试 AnyCPU 时,我可以再次打开设计器。
但是,当我尝试将其中一个工具拖到表单上时,出现错误:
”无法创建组件 'InkCanvas'。错误消息如下:'Microsoft.DotnetNet.DesignTools.Client.DesignToolsServerException: 找不到 Windows 运行时类型 'Microsoft.Toolkit.Win32.UI.XamlHost.IXamlMetadataContainer'.
我卡住了。
如果我通过代码实例化控件而不是将其从工具箱中拖出,它就会工作。
所以可能是 WinForms 设计器的兼容性问题?
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim f As New Microsoft.Toolkit.Forms.UI.Controls.InkCanvas
With f
.Size = New Size(400, 100)
.Location = New Point(20, 20)
End With
AddHandler f.TextChanged, AddressOf Ink_Changed
Me.Controls.Add(f)
End Sub
Friend Sub Ink_Changed(sender As Object, e As EventArgs)
'Write code here.
End Sub
End Class
我创建了一个新的“Windows Forms App”:
现在我从 NuGet 安装 Microsoft.Toolkit.Forms.UI.Controls。
它需要这些依赖项:
点击“我接受”后,接下来发生的是错误消息“无法启动设计工具服务器进程”。显示:
我 select 选项卡中的 Form1 设计器,工具箱现在显示新工具:
然而,设计器不见了,当我再次尝试调出它时,提示“此项目不支持预览”。每次单击 Form1.vb -> View Designer:
时都会出现这个过程我重复了好几次。
当我从调试 x86 切换到调试 AnyCPU 时,我可以再次打开设计器。
但是,当我尝试将其中一个工具拖到表单上时,出现错误:
”无法创建组件 'InkCanvas'。错误消息如下:'Microsoft.DotnetNet.DesignTools.Client.DesignToolsServerException: 找不到 Windows 运行时类型 'Microsoft.Toolkit.Win32.UI.XamlHost.IXamlMetadataContainer'.
我卡住了。
如果我通过代码实例化控件而不是将其从工具箱中拖出,它就会工作。
所以可能是 WinForms 设计器的兼容性问题?
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim f As New Microsoft.Toolkit.Forms.UI.Controls.InkCanvas
With f
.Size = New Size(400, 100)
.Location = New Point(20, 20)
End With
AddHandler f.TextChanged, AddressOf Ink_Changed
Me.Controls.Add(f)
End Sub
Friend Sub Ink_Changed(sender As Object, e As EventArgs)
'Write code here.
End Sub
End Class