了解最新技术文章
Actipro WPF Controls v2020.1 开发正在进行中,新版本的主要目标是使我们的 UI 控件功能/主题现代化,并使主题定制更加容易。
在我们之前的帖子中,我们讨论了我们为 v2020.1 开发的新 WPF 主题生成系统,及其具有自定义主题选项的主题定义。
在今天的帖子中,我们将介绍 WPF 控件附带的新 WPF 主题设计器应用程序,它提供了一种自定义主题定义的可视化方法。
正如我们之前的帖子中所述,主题定义有 50 多个选项,我们的主题生成器使用这些选项将画笔、厚度等资产资源输出到提供 WPF 主题的资源字典中。生成的主题由 Actipro 控件和可选的本机 WPF 控件使用,以始终如一地呈现应用程序的 UI。您还可以通过 DynamicResource 调用在您的 UI 中重用我们生成的任何资产资源。
我们对 WPF 主题设计器应用程序的主要目标是使其易于可视化和自定义主题定义。该应用程序提供了许多“整个主题预设”菜单项,这些菜单项根据我们预定义的主题之一初始化主题定义:
在这里,您可以看到应用程序使用选定的主题预设,并且其代码文档已打开。代码文档列出了 App.OnStartup 代码,您可以将这些代码粘贴到您自己的应用程序中以在您的应用程序中复制相同的主题。
右侧的 Theme Definition 工具窗口包含一个属性网格,您可以在其中完全自定义许多主题定义选项。更改主题定义选项时,代码文档的文本会相应更新以设置非默认值。
最重要的是,该应用程序还会立即生成一个新主题并应用它,以便您获得有关主题定义选项如何影响外观的即时反馈。
让我们将 Intent 更改为 Dark 并查看 Resource Browser 文档……
资源浏览器文档包含由主题定义生成的资产资源的完整列表。在顶部的筛选框中键入文本以查找特定的资产资源。在本例中,我们输入“bullet”来查找与复选框和单选按钮相关的资产资源。
如果您希望在您的应用程序中重用资产资源,只需单击按钮将 DynamicResource 复制到资产的资源键并将其粘贴到您的 XAML 中。
例如,如果我们想要在应用程序的 Border 中使用通用的低对比度容器背景画笔,我们会将 DynamicResource 复制到 ContainerBackgroundLowBrushKey 并将其粘贴到我们的 XAML 中,如下所示:
<Border Background=”{DynamicResource {x:Static themes:AssetResourceKeys.ContainerBackgroundLowBrushKey}}”>
下一篇:没有了!