WPF用户界面套包强势更新,让你应用界面更加现代化,冲出国际

WPF Studio是一套专业的、效果十分酷炫的WPF用户界面控件套包,包含了Actipro公司所有WPF控件,这些控件和组件以丰富的特性和功能来改善应用程序的UI。

该控件包复制现代Office应用程序的外观和功能,为最终用户提供熟悉的界面;内含用于.NET UI平台的主要语法突出显示代码编辑器控件——SyntaxEditor,可提供Visual Studio编辑器中提供的大多数功能。同时,其内的许多UI控件在编写时都考虑了IDE创建,提供了强大的停靠窗口、MDI、属性网格、shell控件和编辑器。

WPF Studio更新到了2020.1版本,本次更新旨在使所有Actipro和本机WPF控件的主题现代化,创建一个独特而强大的框架,以完全自定义应用中的主题,并构建用于配置/预览主题定义的主题设计器应用程序。

除了这些功能之外,我们还添加了新控件,实现了新的示例浏览器应用程序设计,提供了.NET Core程序集和NuGet程序包,并创建了新的产品安装程序。

让我们看看一些较大的更新。

Ribbon风格外观

更新为Of fice 2019样式

现代化的Ribbon外观,流畅的动画贯穿始终

此次更新经历了与功能区相关的每个控件,并对样式进行了改进以匹配Office 2019中的最新外观。

动画标签

我们还希望在功能区中提供流畅的动画,类似于Office。当您将鼠标移到选项卡上时,下划线会动画显示以填充选项卡。选择新选项卡时,该选项卡的内容会快速滑动到动画位置。

后台动画

“ Ribbon Backstage”利用了我们新的WindowChrome叠加层机制,现在也可以完全动画显示。

应用范围主题

Actipro WPF控件提供了许多完整的预定义主题,这些主题的呈现类似于各种Windows和Office版本。这些主题适用于Actipro和可选的本机WPF控件,从而使应用程序外观始终保持一致。尽管此系统一直运行良好,但旧的预定义主题很难自定义。我们希望将主题提升到新版本的更高水平,并且我们确实构建了一些奇妙的东西。

主题定义和生成

v2020.1有一个新框架,您可以在其中配置主题定义对象的众多选项。当您在我们的ThemeManager中注册该主题定义时,您可以随时使用一行代码来应用该主题。可以注册多个主题定义,使您可以注册“浅色”和“深色”主题(或您喜欢的任何其他变体),并在运行时立即在它们之间切换。

深色主题的类似记事本的窗口

到目前为止,有超过50种主题定义选项,包括调色板,边框对比度,项目符号外观,字体大小,角半径,窗口外观等选项。

就像我们的预定义主题之一一样,但希望在控件上启用圆角而不是方形角吗?几行代码即可完成此操作。是否想为您的应用程序建立自己的自定义配色方案?没问题!主题生成器将构造1,000多种资源,如“笔刷”,“厚度”等,这些资源可以在XAML中的任何位置重用,并且全部基于主题定义的选项。

主题设计器应用

主题的一个非常重要的部分是能够准确地可视化更改主题定义选项如何影响各种控件的呈现。这就是新主题设计器应用程序发挥作用的地方。

Theme Designer应用程序提供了许多“整个主题预设”菜单项,这些菜单项基于我们的预定义主题之一来初始化主题定义:

选择了主题预设

在这里,您会看到使用选定主题预设的应用程序,并在文档区域中使用一些示例列表/网格UI。代App.OnStartup码文档列出了代码,您可以将其粘贴到自己的应用程序中,以在应用程序中复制相同的主题。

右侧的“主题定义”工具窗口包含一个属性网格,您可以在其中完全自定义许多主题定义选项。更改主题定义选项后,将适当更新代码文档的文本以设置非默认值,并且应用程序本身会立即应用主题,因此您可以立即获得有关主题定义选项如何影响外观的反馈。

可以配置调色板以适合您的需求,例如在这里我们创建了带有深蓝色调的深色主题。

带有深蓝色调的深色主题

资源浏览器选项卡使您可以将DynamicResource复制到从主题定义生成的任何资源上。并且包括许多包含示例用户界面控件的选项卡,使您可以完全可视化主题在实际控件中的外观。

对于我们的WPF控件客户而言,这个新的主题设计器应用程序将是一个重要的补充。

所有样式/模板已更新

我们已经重构了所有Actipro和原生WPF控件样式/模板,使其外观更加现代。在现代主题中,字形现在使用的是更多的人字形外观,更新的滚动条视觉效果以及柔和的向下阴影。我们添加了所有这些,还有更多。如上所述,所有内容都可以在主题定义中进行配置,以准确地呈现所需的外观。

高对比度主题改进

我们对整个高对比度主题进行了重新设计,以使Actipro和本机WPF控件中的所有UI在高对比度模式下都能很好地呈现,从而确保所有客户都可以完全访问您的应用。

自动切换主题

我们在ThemeManager中内置了可选功能,可以自动跟踪应用程序的Windows明暗设置,并检测何时激活了高对比度模式。当这些选项中的任何一个发生更改时,ThemeManager都会自动将您的应用程序主题适当地更改为为每种情况选择的主题。

镀铬

共享库中包含的WindowChrome允许任何WPF窗口具有高级chrome功能。过去,这主要与提供具有Metro,Office或Aero外观的主题窗口有关。2020.1版增加了客户希望使用的大量新功能。

动画叠加

兼容MVVM的新覆盖功能允许注入自定义内容,覆盖整个窗口,包括标题栏区域。此功能支持多种内置动画,并为您的应用程序提供了各种令人满意的可能性。

WindowChrome处理叠加层

从办公室式主屏幕到处理指示器的任何内容都可以在叠加层中实现。

标题栏自定义

可以对标题栏进行自定义,以在标题栏的左侧,中间或右侧包括任何自定义内容。这些区域中的每个区域都像ContentControl一样对待,因此可以直接通过子控件或通过MVVM模型和DataTemplates进行配置。

窗口标题栏中的菜单

现在,很容易将菜单添加到标题栏中,这在许多现代应用程序中都可以看到。

标题栏中的“后退”按钮

您可以使用“后退”按钮替换标题栏图标。

用户个人资料按钮,显示弹出菜单

或在标题栏的右侧添加用户个人资料按钮。

标题栏标题中的PopupButton显示菜单

标题栏的中央标题部分甚至可以替换为自定义内容,例如弹出按钮。

标题栏合并

一些现代应用程序的窗口具有更风格化的设计,并且不希望具有传统的窗口标题栏外观。这通常是通过将窗口内容的一部分合并到标题栏区域中来实现的。WindowChrome的新功能提供了三种合并选项。

内容部分合并到标题栏区域的窗口

一种合并类型的BackgroundOnly会移动Window.Background填充以覆盖标题栏背景,同时将实际的Window.Content保留在其正常位置。合并种类的ContentOnly会将Window.Background填充到通常的位置,但是将Window.Content移到标题栏背景上。最后,合并类型Full将Window.Background和Window.Content都移到标题栏背景上。

系统菜单自定义

WPF Windows一直使用Win32提供其系统菜单,即单击窗口标题栏图标或右键单击窗口标题栏时显示的菜单。Win32系统菜单不是由WPF呈现的,因此从不匹配WPF应用程序的样式。在您的应用中使用深色主题时,这一点尤其明显。

样式设置了窗口标题栏上下文菜单,并添加了自定义帮助项

WindowChrome更新会自动将基于Win32的系统标题栏上下文菜单替换为基于WPF的自定义菜单,该菜单具有与您的应用程序中的其他菜单相同的功能。这意味着它将在深色主题下看起来很棒。此外,菜单可以完全自定义,允许在显示之前注入其他菜单项。

图像适应

图像适配是一个新功能领域,在许多应用程序中都是真正的游戏规则改变者。结合我们的DynamicImage控件,图像适应包括多种方法来操纵图像以在各种情况下显示,例如深色主题,高DPI和单色。

为浅色主题设计的相同图像可以调整为在深色主题中清晰呈现

功能包括:

  • 图像的色彩适应(色彩偏移),可以自动调整为浅色主题设计的图像以用于深色主题。
  • 将单色矢量图像转换为以当前前景色呈现。
  • 动态加载光栅图像的预定义高DPI和/或主题特定的图像变体。
  • 将图像转换为灰度。
  • 将图像转换为指定颜色的单色。

您可以为一个浅色主题设计一组图标,然后几乎不需要额外的工作就可以在深色和高对比度主题中重复使用这些相同的图标。

控制项

PropertyGrid增强功能

PropertyModel类旨在用于应在PropertyGrid中出现的手动创建的属性,现已更新为依赖项,以便它可以在其属性上支持XAML绑定。

示例浏览器使用带有样式的PropertyGrid和新的CanAutoConfigure功能来显示特定选项

此功能与新的CanAutoConfigure选项结合使用,可以轻松地在XAML中指定应显示在PropertyGrid中的多个属性。您只需将PropertyModel.Value绑定到另一个对象上的属性,它就会填充其余的属性,包括选择属性编辑器。您还可以根据需要覆盖自动配置,例如,当您需要专门的属性标签或编辑器时。

PopupButton增强功能

对于更常见的用例,PopupButton对其内部和逻辑进行了很多重构和改进。添加了新属性,以使弹出窗口自定义更加容易。

新的ShadowChrome

添加了新的原始ShadowChrome控件,该控件使用可选的着色器效果渲染现代投影。

ShadowChrome在卡控件周围渲染柔和的阴影

它还可以使用高性能的WPF渲染过程来渲染漂亮的向下阴影效果。

新的MultiColumnPanel

MultiColumnPanel控件可以呈现多列中的子元素,并随着可用空间的减少而使列折叠。

MultiColumnPanel控件利用ShadowChrome在卡片项目周围产生柔和阴影

这是一种节省空间且具有视觉吸引力的方法,可用于渲染项目列表或拆分文本段落。

全新的示例浏览器设计

我们完全重新设计了WPF控件示例应用程序的用户界面。

新的示例浏览器应用程序主视图

现在,它利用了我们所有主题的改进,并提供了一种快速,有效的方式来导航和与数百个样本进行交互。

.NET核心程序集

使用v2020.1,我们的控件产品可以同时在.NET Framework 4.0和.NET Core 3.0程序集版本中提供。现在,您将可以在.NET Core应用程序中使用基于.NET Core的本机Actipro程序集!

NuGet软件包

客户的另一个大要求是要求我们为控件提供NuGet软件包,我们将在v2020.1中交付该软件包。NuGet软件包发布在nuget.org上,其中包含我们程序集的.NET Core和.NET Framework版本。

大型metapackage如何在nuget.org上显示

如果需要我们程序集的.NET Core版本,则必须使用NuGet软件包。

工具箱图标

我们为所有WPF控件设计了新的工具箱图标,因此它们与Visual Studio 2019设计完美融合。

简单耐看的安装程序

最后,我们还创造了一种全新的安装体验,其简单性十分出色。

新的WPF控件安装程序

点击“了解更多”下载最新版WPF Studio体验吧!如

了解更多
举报
评论 0