具有自定义 Telerik 主题的 C# Winforms:嵌入式资源和 ThemeResolutionService.LoadPackageResource
C# Winforms with custom Telerik theme: embedded resource and ThemeResolutionService.LoadPackageResource
我正在使用自定义主题并将其作为 .tssp 文件加载到我的 Program.cs 中(有效):
ThemeResolutionService.LoadPackageFile("data\myThemeName.tssp");
但是我想加载 .tssp 文件作为嵌入资源。因此,我将文件作为资源文件添加到 Resources.resx 下,并将以下方法放入我的 Program.cs:
ThemeResolutionService.LoadPackageResource("myProject.Properties.Resources.myThemeName");
但是出现如下错误:
Specified resource does not exist in the provided assembly.
引号内的路径应该是正确的,因为 IDE 在我删除引号时找到了它。我还在相同的资源路径下使用不同的图像作为嵌入资源。
这个 Telerik 方法是有问题还是我做错了什么?
ThemeResolutionService class 公开了两个允许您加载主题包的静态方法:
LoadPackageResource:此方法加载包含在项目中的主题包文件作为 EmbeddedResource。这是加载主题包的首选方法,因为在部署应用程序时不会更改包的资源路径。路径构造为DefaultProjectNamespace.ThemeFolder.ThemePackageFile。仅当包包含在主项目目录下的文件夹中并且项目编程语言为 C# 时,才应使用 ThemeFolder 部分。在 VB.NET 项目中,即使包文件包含在文件夹中,您也不需要包含 ThemeFolder 部分。
ThemeResolutionService.LoadPackageResource("SamplesCS.CustomTheme.tssp");
public RadForm1()
{
InitializeComponent();
ThemeResolutionService.LoadPackageResource("CustomThemeResourcePackage.Resources.FluentDarkModified.tssp");
ThemeResolutionService.ApplicationThemeName = "FluentDarkModified";
}
结果:
LoadPackageFile:此方法从系统上的指定目录加载文件。根据目录的定义方式(完整或相对),当应用程序部署在另一台机器上时,包的路径可能会发生变化。
ThemeResolutionService.LoadPackageFile(@"C:\CustomTheme.tssp");
我正在使用自定义主题并将其作为 .tssp 文件加载到我的 Program.cs 中(有效):
ThemeResolutionService.LoadPackageFile("data\myThemeName.tssp");
但是我想加载 .tssp 文件作为嵌入资源。因此,我将文件作为资源文件添加到 Resources.resx 下,并将以下方法放入我的 Program.cs:
ThemeResolutionService.LoadPackageResource("myProject.Properties.Resources.myThemeName");
但是出现如下错误:
Specified resource does not exist in the provided assembly.
引号内的路径应该是正确的,因为 IDE 在我删除引号时找到了它。我还在相同的资源路径下使用不同的图像作为嵌入资源。
这个 Telerik 方法是有问题还是我做错了什么?
ThemeResolutionService class 公开了两个允许您加载主题包的静态方法:
LoadPackageResource:此方法加载包含在项目中的主题包文件作为 EmbeddedResource。这是加载主题包的首选方法,因为在部署应用程序时不会更改包的资源路径。路径构造为DefaultProjectNamespace.ThemeFolder.ThemePackageFile。仅当包包含在主项目目录下的文件夹中并且项目编程语言为 C# 时,才应使用 ThemeFolder 部分。在 VB.NET 项目中,即使包文件包含在文件夹中,您也不需要包含 ThemeFolder 部分。
ThemeResolutionService.LoadPackageResource("SamplesCS.CustomTheme.tssp");
public RadForm1()
{
InitializeComponent();
ThemeResolutionService.LoadPackageResource("CustomThemeResourcePackage.Resources.FluentDarkModified.tssp");
ThemeResolutionService.ApplicationThemeName = "FluentDarkModified";
}
结果:
LoadPackageFile:此方法从系统上的指定目录加载文件。根据目录的定义方式(完整或相对),当应用程序部署在另一台机器上时,包的路径可能会发生变化。
ThemeResolutionService.LoadPackageFile(@"C:\CustomTheme.tssp");