问题标签 [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.

0 投票
1 回答
211 浏览

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)”

0 投票
1 回答
27 浏览

c# - 编译 WinUI 桌面应用程序时出现 PRI 错误

当我尝试构建 WinUI 应用程序时发生以下 PRI 错误,并且我的应用程序具有库项目 A,其中包含在库项目中称为 NuGet 的自定义控件库。

库项目 A -> 称为 Nuget B 和 Nuget C。当我尝试使用此 nuget PRI 错误构建应用程序时。

目前,这可以通过再次重新打包 Nuget 并解决。

您能否说明为什么会发生这些错误以及如何解决?这个?

0 投票
3 回答
615 浏览

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 中使用:

注意:我没有将此作为答案发布,因为有一个答案,这是我的实现,以帮助任何有兴趣的人。

0 投票
1 回答
173 浏览

xaml - 如何在 Windows App SDK(WIN UI/Project Reunion)项目中自定义窗口标题栏?

我正在尝试使用新的 Widows App SDK 构建应用程序。我使用 Windows 社区工具包来创建应用程序。

在查阅文档后,我尝试了这个:

在我的应用显示的第一页上,我创建了一个文本块:

在此页面的代码后面,我添加了以下代码:

在 App XAML 页面上,我按照文档的说明覆盖了这些值:

以上确实使默认标题栏消失了。但是,我只剩下“你好”这个词,没有背景或按钮:

截图

有什么我想念的吗?

0 投票
1 回答
68 浏览

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.IsSelectedTreeViewItem.IsSelcted. 是行不通的。

MvvmGen 像这样自动为 MVVM 生成相应的属性。

参考:https ://github.com/hayashida-katsutoshi/WinUITreeViewTest

0 投票
1 回答
203 浏览

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 不同?或者甚至还不支持这个?

0 投票
2 回答
51 浏览

c# - 对 GridView 或其支持的 ObservableCollection 进行排序的正确方法?

我最近一直在用 WinUI 3 编写一个爱好项目,但遇到了一些麻烦。

在我的应用程序中,按照 WinUI 文档中的建议,我有一个GridView在 XAML 中绑定到 的。ObservableCollection这很好用,但现在我需要能够对其中的项目进行排序和过滤,GridView目前还不清楚最“正确”或最惯用的方式是什么。

谷歌搜索显示 WPF 有一些CollectionViewSource处理此问题的部分,但这些部分似乎已在 WinUI 中删除。

目前,我发现唯一可行的方法是删除 XAML 绑定,将 更改ObservableCollection为 a List,然后当用户排序时,手动将GridView' 源设置为,null然后将源设置为List. 如果我没记错的话,这会破坏虚拟化GridView,所以这似乎不是我应该做的。

我将不胜感激对此的任何见解。

0 投票
1 回答
93 浏览

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)。

这是我的项目文件的第一部分:

0 投票
1 回答
70 浏览

visual-studio - 如何关联名称并将其发布到商店,一个WinUI3应用程序?

我正在使用 Windows App SDK 开发 WinUI3 应用程序。但是,我无法在项目的右键菜单中找到将其名称与商店相关联并将其发布到商店的选项。我在我的 VS 中遗漏了什么吗?(在 UWP 中,有一个名为“项目”的子菜单,其中包含所有这些菜单)。

在此处输入图像描述

这是我选择的项目类型。

在此处输入图像描述

0 投票
1 回答
50 浏览

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。