在UWP应用程序中使用TreeView时如何处理命名空间冲突
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在UWP应用程序中使用TreeView时如何处理命名空间冲突相关的知识,希望对你有一定的参考价值。
将“ItemContainerStyle”设置为generic.xaml中定义的“StaticResource TreeViewItemStyle”时抛出异常。该消息表明样式使用“Windows.UI.Xaml.Controls.TreeViewItem”而不是“Microsoft.UI.Xaml.Controls.TreeViewItem”。
我删除了ItemContainerStyle赋值以确认它是导致异常的行。
<ControlTemplate TargetType="muxcontrols:TreeView">
<muxcontrols:TreeViewList x:Name="ListControl"
ItemTemplate="{StaticResource TreeViewItemDataTemplate}"
ItemContainerStyle="{StaticResource TreeViewItemStyle}">
这个问题显而易见,但一个适当的解决方案可以避开我。要利用该样式,我是否在generic.xaml文件中开始预先添加“muxcontrols:”?这似乎是一个坏主意。我是否需要分别重新创建风格和行为?
我尝试(min build 17763和target build 17134)来消除版本问题,但似乎我需要两个17763。即便如此,我还没有设置ItemsSource。我正在尝试使用文档中使用的技术:“docs.microsoft.com/en-us/windows/uwp/design / ...”,用于音乐库TreeView示例。我的真实项目的最小版本是16299。
所以,问题很明显。 TreeView控件是从build 17134引入的。如果您使用的是平台API,则需要确保项目的目标版本是17134或更高版本。既然你说你想设置ItemsSource。 ItemsSource
及其相关API需要Windows 10,版本1809(SDK 17763)或更高版本,因此您需要使您的项目的目标版本为17763。
然后,您可以直接使用TreeView控件,如下所示:
<TreeView></TreeView>
如果您使用的是Windows UI Library APIs,则需要按照Getting started with the Windows UI Library 文档下载并安装Windows UI Library。请注意:
重要说明:要使用WinUI 2.1,项目的Min版本必须为14393或更高版本,目标版本必须为17763或更高版本。
然后,如果要在WinUI库中使用TreeView控件,请在XAML页面中,在页面顶部添加引用
xmlns:controls="using:Microsoft.UI.Xaml.Controls"
在XAML页面上,您可以直接输入以下内容:
<controls:TreeView></controls:TreeView>
以上是关于在UWP应用程序中使用TreeView时如何处理命名空间冲突的主要内容,如果未能解决你的问题,请参考以下文章
UILocalNotification - 应用程序未运行时如何处理?