WPF中XAML为ListView拆分多列时报GridView相关错误如何解决?
问题排查解决方案
- 第一步:确认项目类型是否正确
GridView、ListView.View均为WPF框架专属的控件特性,如果你当前创建的是WinForms、UWP、WinUI 3、MAUI等非WPF项目,自然会找不到对应属性和类型。确认你的开发需求是WPF应用的话,重新创建WPF专属项目模板即可解决。 - 第二步:检查XAML根节点命名空间声明
确认你的XAML文件的Window/UserControl根节点包含WPF默认命名空间:
缺失该命名空间会导致无法识别WPF原生控件的相关属性、类型,补全即可。xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" - 第三步:检查项目程序集引用配置
- 若为.NET Framework版本WPF项目:检查项目引用中是否缺失
PresentationFramework.dll,重新添加该系统引用即可。 - 若为.NET Core/.NET 5及以上版本WPF项目:打开.csproj项目文件确认两项配置:
- 项目根节点Sdk属性为
Microsoft.NET.Sdk.Desktop - PropertyGroup节点下存在配置
<UseWPF>true</UseWPF>
配置修正后重新生成项目即可修复程序集引用缺失问题。
- 项目根节点Sdk属性为
- 若为.NET Framework版本WPF项目:检查项目引用中是否缺失
- 第四步:处理自定义类名冲突
若你自己的项目中定义了同名的ListView类覆盖了原生WPF控件,可以给控件显式加WPF命名空间前缀,声明为<Windows.Controls.ListView>即可。
内容的提问来源于stack exchange,提问作者Kwok Huen Leung
相关产品推荐
相关产品推荐

