问题标签 [windows-app-sdk]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
visual-studio - Project Reunion - 应用程序无法编译
我有一个使用 Project Reunion(0.8 预览版)构建的解决方案,它正在编译和运行良好。我的视觉工作室和扩展进行了更新,现在应用程序现在无法编译,有 9 条错误消息,所有变体如下
我尝试创建一个没有更改的新项目,但出现相同的错误。
严重性代码 描述 项目文件行抑制状态错误 NU1201 项目接收与 uap10.0.17763 (UAP,Version=v10.0.17763) 不兼容。项目 Reception 支持:net5.0-windows10.0.19041 (.NETCoreApp,Version=v5.0) Reception (Package) C:\Users\Ceri.Turner\OneDrive - David Lloyd Leisure\Documents\Visual Studio\Reception\Reception\Reception (包)\接待(包).wapproj 1
严重性代码 描述 项目文件行抑制状态错误 NU1201 项目接收与 uap10.0.17763 (UAP,Version=v10.0.17763) / win10-arm 不兼容。项目 Reception 支持:net5.0-windows10.0.19041 (.NETCoreApp,Version=v5.0) Reception (Package) C:\Users\Ceri.Turner\OneDrive - David Lloyd Leisure\Documents\Visual Studio\Reception\Reception\Reception (包)\接待(包).wapproj 1
我试过谷歌搜索,错误似乎与我没有使用的 UWP 有关,所以我很困惑。当我创建项目时,使用的模板是“Blank App, Packaged (WinUI 3 in Desktop)”
c# - 编译 WinUI 桌面应用程序时出现 PRI 错误
当我尝试构建 WinUI 应用程序时发生以下 PRI 错误,并且我的应用程序具有库项目 A,其中包含在库项目中称为 NuGet 的自定义控件库。
库项目 A -> 称为 Nuget B 和 Nuget C。当我尝试使用此 nuget PRI 错误构建应用程序时。
目前,这可以通过再次重新打包 Nuget 并解决。
您能否说明为什么会发生这些错误以及如何解决?这个?
c# - 如何使用 Windows App SDK 在 WinUI 3 桌面中获取 DispatcherQueue
在 WPF 中,所有控件都继承 DispatcherObject,并且很容易到达 Dispatcher。
如何使用 WinUI 3 Windows App SDK 获取 DispatcherQueue 并在 ViewModel 中使用它?
编辑
我的实现扩展了 mm8 最受赞赏的答案。
在我的 ViewModel 中创建一个属性
public Microsoft.UI.Dispatching.DispatcherQueue TheDispatcher { get; set; }
然后在我的 MainPage.xaml.cs 代码隐藏MainPage_Loaded
事件中获取调度程序
ViewModel.TheDispatcher = this.DispatcherQueue;
现在我的 VM 中有调度程序,因此它易于从 VM 中使用:
注意:我没有将此作为答案发布,因为有一个答案,这是我的实现,以帮助任何有兴趣的人。
xaml - 如何在 Windows App SDK(WIN UI/Project Reunion)项目中自定义窗口标题栏?
我正在尝试使用新的 Widows App SDK 构建应用程序。我使用 Windows 社区工具包来创建应用程序。
在查阅文档后,我尝试了这个:
在我的应用显示的第一页上,我创建了一个文本块:
在此页面的代码后面,我添加了以下代码:
在 App XAML 页面上,我按照文档的说明覆盖了这些值:
以上确实使默认标题栏消失了。但是,我只剩下“你好”这个词,没有背景或按钮:
有什么我想念的吗?
c# - 如何在 WinUI3 中将属性绑定到 TreeViewItem.IsSelected?
我正在尝试在 WinUI3 桌面应用程序中动态生成树视图。它可以生成树,但默认情况下所有节点都未选中。我的应用程序需要记住选择并复制以前的状态。
从技术上讲,我可以从中读取选择状态TreeView.SelectedNodes
。但是我无法找到从代码中选择节点的方法。
我在网上找到了几篇关于 WPF 或 UWP 的相关文章,但没有针对 WinUI3。
环境
- WinUI3桌面
- Windows 应用 SDK 1.0.0
- MvvmGen 1.1.2
目标
- 在启动时选择树中的一些项目。
- 从 ViewModel 中读取选择的状态。
问题
- 无法将视图中的 IsSelected 属性绑定到
ListViewItem.IsSelected
。
代码
在TreeViewItem
节点中,它旨在绑定MyItem.IsSelected
到TreeViewItem.IsSelcted
. 是行不通的。
MvvmGen 像这样自动为 MVVM 生成相应的属性。
参考:https ://github.com/hayashida-katsutoshi/WinUITreeViewTest
c# - WinUI XAML:使用来自另一个项目的 ResourceDictionary
在我的 WinUI 3 应用程序中,我正在尝试使用位于另一个项目中的 ResourceDictionary。
假设引用的项目是ResourceTestLib
,并且这个库项目有一个文件夹“Styles”,其中有一个文件“_Thickness.xaml”。
在app.xaml
主应用程序的文件中,我在“此处的其他合并字典”注释下方尝试了这两种方法,但它们似乎都不起作用,即应用程序在启动时崩溃并显示消息“无法找到资源......”消息.
这是我的 app.xaml:
当我将鼠标悬停在相应的行上时,Visual Studio 显示一个工具提示,其中第一个引用的“Path X not found”和第二个引用ResourceDictionary
的“路径中的无效字符”(可能是因为“application:,,”)消息。
我想 WinUI XAML 在这方面可能与 WPF XAML 不同?或者甚至还不支持这个?
c# - 对 GridView 或其支持的 ObservableCollection 进行排序的正确方法?
我最近一直在用 WinUI 3 编写一个爱好项目,但遇到了一些麻烦。
在我的应用程序中,按照 WinUI 文档中的建议,我有一个GridView
在 XAML 中绑定到 的。ObservableCollection
这很好用,但现在我需要能够对其中的项目进行排序和过滤,GridView
目前还不清楚最“正确”或最惯用的方式是什么。
谷歌搜索显示 WPF 有一些CollectionViewSource
处理此问题的部分,但这些部分似乎已在 WinUI 中删除。
目前,我发现唯一可行的方法是删除 XAML 绑定,将 更改ObservableCollection
为 a List
,然后当用户排序时,手动将GridView
' 源设置为,null
然后将源设置为List
. 如果我没记错的话,这会破坏虚拟化GridView
,所以这似乎不是我应该做的。
我将不胜感激对此的任何见解。
c# - 调用 Bootstrap.Initialize() 时未打包的 WinUI3 应用程序崩溃
我有一个 WinUI3 应用程序,我想将它部署为未打包的应用程序,即不使用 MSIX 打包格式的应用程序。
我按照此处给出的说明进行操作:未打包 C# WinUI 3 应用程序的说明,并且运行良好。我可以启动在 bin 文件夹中创建的 exe 文件(调试或发布)或使用“未打包”配置文件调试应用程序。
我尝试的下一件事是在运行时引用 Windows App SDK 以使用它提供的功能。这不起作用,即应用程序崩溃或更准确地说只是停止。
我所做的是遵循以下步骤:高级教程:构建和部署使用 Windows App SDK 的未打包应用程序
在他们的示例中,他们使用具有此启动代码的控制台应用程序,您可以Bootstrap.Initialize()
在他们的代码中看到对的调用:
在我的 WinUI3 应用程序中,我将调用插入到类Bootstrap.Initialize()
的构造函数中App
。但是,一旦Initialize
执行了调用 to 的行,应用程序就会停止,没有可见的异常。以下两个实现都显示相同的行为。
版本 1:
版本 2:
有谁知道这种行为的可能原因?
WinUI3 项目引用了“Microsoft.WindowsAppSDK”Nuget 包,我还在我的系统上安装了Windows App SDK(稳定版 1)。
这是我的项目文件的第一部分:
visual-studio-2022 - 将 Microsoft.WindowsAppSDK 从 1.0.0-experimental1 更新到 1.0.0
我正在尝试将 Microsoft.WindowsAppSDK 从 1.0.0-experimental1 更新到 1.0.0 但升级 NuGet 后我收到此错误
cs5001 程序不包含适用于入口点的静态“main”方法
在 CSC 文件中。
我正在使用 Visual Studio 2022。Windows 10 版本 1909。OS Build 18363.1734。