我有一个基本的WinUI3 C++/WinRT应用程序,其中包含一个带有一个名为"APPNAME“的简单条目的resw文件。我希望把这个字符串放在我的Xaml表单的标题中。
我的MainWindow.xaml.cpp中有一个代码片段。
MainWindow::MainWindow()
{
InitializeComponent();
auto resourceLoader{ Windows::ApplicationModel::Resources::ResourceLoader::GetForViewIndependentUse()};
hstring title = resourceLoader.GetString(L"APPNAME");
this->Title(title);
} 问题似乎是"Windows::ApplicationModel::Resources“不正确。那么,问题是如何在C++/WinRT中访问重发字符串条目?
非常感谢,
杰森
发布于 2022-09-07 06:26:18
使用WinUI 3时,大多数命名空间通常以Microsoft开始,而不是Windows (更适合UWP)。
实际上,只有WinUI3 3的文档很难获得,下面是一些:用MRT核心管理资源
WinUI 3资源入口点现在是Microsoft.Windows.ApplicationModel.Resources.ResourceManager类。
因此,对于"MyString“文件中的"Resources.resw”字符串资源,

您现在可以这样做了:
Microsoft::Windows::ApplicationModel::Resources::ResourceManager rm{};
auto str = rm.MainResourceMap().GetValue(L"Resources/MyString").ValueAsString();请注意,需要在Xaml包含之后进行#include <winrt/Microsoft.Windows.ApplicationModel.Resources.h>编译。
https://stackoverflow.com/questions/73628384
复制相似问题