我已经按照这里的说明创建了一个示例应用程序,该应用程序使用XAML Islands添加InkCanvas
和CalendarView
等控件:https://learn.microsoft.com/en-us/windows/apps/desktop/modernize/host-standard-control-with-xaml-islands
但是,尽管Microsoft.Toolkit.Wpf.UI.Controls包宣传它提供SwapChainPanel
,但该控件并不出现在命名空间中可用控件的列表中。我做了一些挖掘,意识到这是因为SwapChainPanel
被标记为internal
:https://github.com/CommunityToolkit/Microsoft.Toolkit.Win32/blob/master/Microsoft.Toolkit.Wpf.UI.Controls/SwapChainPanel/SwapChainPanel.cs#L17,因此不是公开可见的,这意味着它不能根据XAML Islands的教程使用。
因此,目前还不清楚如何创建一个使用XAML Islands的SwapChainPanel
控件的应用程序。哪里有样本吗?
除此之外,我非常有兴趣知道是否有任何方法可以在针对.NET Framework而不是.NET Core的应用程序中使用SwapChainPanel
。虽然XAML Islands的official MSDN documentation提到必须使用.NET Core**,但first official Windows Developer blog post on XAML Islands另有说明,并暗示Microsoft.Toolkit.Wpf.UI.Controls中包含的所有控件都与.NET Framework兼容,根据这一段:
.NET框架和.NET Core 3中支持.NET Package 控件。.NET主机控件(WindowsXamlHost)可用于Windows窗体和WPF。此控件允许您承载UWP XAML内容。如果UWP XAML内容是Windows 10平台附带的控件(如ColorPicker或NavigationView),则可以针对.NET Framework 4.7.2或NET Core 3。
那么哪一个是正确的呢?
1条答案
按热度按时间bmp9r5qi1#
有一个如何在WPF中使用
SwapChainPanel
的示例,可以在Microsoft的官方GitHub respository中找到。很明显这很复杂。请参阅this GitHub issue以获取更多信息。