界面控件Telerik UI for WPF中文教程 - 用RadSvgImage升级应用程序UI

本文主要是介绍界面控件Telerik UI for WPF中文教程 - 用RadSvgImage升级应用程序UI,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Telerik UI for WPF拥有超过100个控件来创建美观、高性能的桌面应用程序,同时还能快速构建企业级办公WPF应用程序。UI for WPF支持MVVM、触摸等,创建的应用程序可靠且结构良好,非常容易维护,其直观的API将无缝地集成Visual Studio工具箱中。

Telerik UI for WPF中的RadSvgImage组件使开发人员能够将基于矢量的图形无缝集成到他们的应用程序中。在之前的版本中,Telerik UI for WPF引入了开创性的RadSvgImage控件,这个创新的附加功能使开发人员能够将基于矢量图形集成到他们的应用程序中,将用户体验提升到一个全新的水平。

Telerik UI for WPF 最新版下载(Q技术交流:726377843)

由于能够在不牺牲质量的情况下缩放图像,RadSvgImage控件彻底改变了WPF中的UI开发。对于制作高DPI应用程序,优先考虑用户满意度,这是非常宝贵的。这一进步的基石在于可缩放矢量图形(SVG),这是一种基于xml的格式,允许图形无缝地适应所有DPI设置。

界面控件Telerik UI for WPF中文教程图集

开始使用RadSvgImage

将RadSvgImage添加到项目中是很简单的,只需要包含对Telerik.Windows.Controls程序集的引用即可!将SVG图像显示为独立组件是一件轻而易举的事,你可以这样设置UriSource属性:

界面控件Telerik UI for WPF中文教程图集

<telerik:RadSvgImage UriSource="SVGIcon.svg" Width="128" Height="128"/>

RadSvgImage没有默认大小,如果它被放置在一个用无穷大测量它的面板中(例如,在StackPanel中),您需要为SVG图像指定一个正确显示的大小。

您也可以使用RadSvgImage作为一个标记扩展,替代将其设置为一个单独的组件:

界面控件Telerik UI for WPF中文教程图集

<Image Source="{telerik:RadSvgImageSource Source='SVGImage.svg'}"
Width="128"
Height="128"/>
自定义填充颜色

您可以通过调整OverrideColor属性来完全替换SVG图像的填充颜色:

界面控件Telerik UI for WPF中文教程图集

动画制作更简单

RadSvgImage控件具有内置的动画支持,允许您将SVG图像带入生活。要应用动画,请利用SVG的XML中的animate、animateMotion和animateTransform元素。

界面控件Telerik UI for WPF中文教程图集

<g>
<animateTransform attributeName="transform" attributeType="XML" type="rotate" from="0" to="360" begin="0s" dur="12s" />
<use xlink:href="#minuteHand" />
</g>
将画笔应用于元素

如果您曾经想要用色彩填充SVG图像,所需做的就是深入到CustomBrushes属性。它允许您轻松地将不同的色调应用于svg中的元素,这就像给您的图形一个个人的触摸!提醒一下,CustomBrushes属性是一个Dictionary<string, Brush>,这基本上意味着它是一个处理颜色变化的漂亮工具。

让我们深入研究一个例子,假设您已经准备好了SVG文件,可以把它想象成画布,这里有一个片段:

<svg width="200" height="200" viewBox="130 130 200 200" fill="none" xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
enable-background="new 0 0 512 512" xml:space="preserve">
<defs>
<solidColor id="calendar-lines"/>
<solidColor id="calendar-datebgr"/>
<solidColor id="calendar-date"/>
</defs>
<path d="M14.5,39.8 L112.2,39.8 M14.5,55.8 L112.2,55.8 M14.5,71.8 L112.2,71.8 M14.5,87.8 L112.2,87.8 M14.5,103.8 L112.2,103.8 M22.8,31.9 L22.8,109.1 M39.0,31.9 L39.0,109.1 M55.2,31.9 L55.2,109.1 M71.5,31.9 L71.5,109.1 M87.7,31.9 L87.7,109.1 M103.9,31.9 L103.9,109.1 M116.6,1 L11.1,1 C5.8,1 1.5,5.2 1.5,10.5 L1.5,114.5 C1.5,119.7 5.8,124 11.1,124 L116.6,124 C121.9,124 126.3,119.7 126.3,114.5 L126.3,10.5 C126.3,5.2 121.9,1 116.6,1 z M1.0,21 L125.7,21"
fill="transparent"
transform="translate(170,166)"
stroke="url(#calendar-lines)" stroke-width="2" width="130" height="125" />
<rect x="224.977" y="222" width="32.4675" height="32" fill="url(#calendar-datebgr)"/>
<path d="M246.145 230.268C245.383 231.664 244.664 233.048 243.987 234.419C243.31 235.782 242.696 237.153 242.146 238.532C241.596 239.912 241.118 241.304 240.711 242.709C240.305 244.105 239.992 245.536 239.772 247H236.687C236.89 245.697 237.178 244.397 237.55 243.103C237.931 241.799 238.375 240.5 238.883 239.205C239.391 237.902 239.958 236.594 240.584 235.282C241.219 233.97 241.892 232.646 242.603 231.309H233.983V228.795H246.145V230.268Z"
fill="url(#calendar-date)" stroke="transparent" stroke-width="0"/>
</svg>

现在,您需要创建一个自定义Dictionary集合来定义颜色。

public class CustomDictionary : Dictionary<string, Brush> { }

现在是时候用一些充满活力的选择加载您的自定义字典了,看看这个:

<Grid.Resources>
<local:CustomDictionary x:Key="CustomBrushesDictionary">
<SolidColorBrush x:Key="calendar-lines" Color="#08BAB7"/>
<SolidColorBrush x:Key="calendar-datebgr" Color="#b708ba"/>
<SolidColorBrush x:Key="calendar-date" Color="Black"/>
</local:CustomDictionary>
</Grid.Resources>

最后让我们把它们结合起来,使用CustomBrushes属性将RadSvgImage附加到自定义字典上。

<Grid>
<Grid.Resources>
<local:CustomDictionary x:Key="CustomBrushesDictionary">
<SolidColorBrush x:Key="calendar-lines" Color="#08BAB7"/>
<SolidColorBrush x:Key="calendar-datebgr" Color="#B708BA"/>
<SolidColorBrush x:Key="calendar-date" Color="#FBFF00"/>
</local:CustomDictionary>
</Grid.Resources>
<telerik:RadSvgImage UriSource="/Images/SvgImage.svg" CustomBrushes="{StaticResource CustomBrushesDictionary}" Width="128" Height="128"/>
</Grid>

RadSvgImage现在摇摆自定义颜色。

界面控件Telerik UI for WPF中文教程图集

视觉比较 - SVG vs PNG

下面的RadGridView示例有两个GridViewImageColumns,一个使用SVG图像,另一个使用PNG图像。差异是惊人的,PNG图像有点模糊,但SVG列保持了清晰的清晰度。

界面控件Telerik UI for WPF中文教程图集

总结

总之,RadSvgImage控件提供了一个多功能和强大的解决方案,可以将高质量的矢量图形无缝集成到您的应用程序中。它的灵活性,加上可定制的颜色和内置动画支持等功能,为创建令人惊叹的用户界面开辟了一个可能性的世界。

这篇关于界面控件Telerik UI for WPF中文教程 - 用RadSvgImage升级应用程序UI的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/1037274

相关文章

Kali Linux安装实现教程(亲测有效)

《KaliLinux安装实现教程(亲测有效)》:本文主要介绍KaliLinux安装实现教程(亲测有效),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、下载二、安装总结一、下载1、点http://www.chinasem.cn击链接 Get Kali | Kal

Web技术与Nginx网站环境部署教程

《Web技术与Nginx网站环境部署教程》:本文主要介绍Web技术与Nginx网站环境部署教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Web基础1.域名系统DNS2.Hosts文件3.DNS4.域名注册二.网页与html1.网页概述2.HTML概述3.

spring security 超详细使用教程及如何接入springboot、前后端分离

《springsecurity超详细使用教程及如何接入springboot、前后端分离》SpringSecurity是一个强大且可扩展的框架,用于保护Java应用程序,尤其是基于Spring的应用... 目录1、准备工作1.1 引入依赖1.2 用户认证的配置1.3 基本的配置1.4 常用配置2、加密1. 密

WinForms中主要控件的详细使用教程

《WinForms中主要控件的详细使用教程》WinForms(WindowsForms)是Microsoft提供的用于构建Windows桌面应用程序的框架,它提供了丰富的控件集合,可以满足各种UI设计... 目录一、基础控件1. Button (按钮)2. Label (标签)3. TextBox (文本框

C#实现访问远程硬盘的图文教程

《C#实现访问远程硬盘的图文教程》在现实场景中,我们经常用到远程桌面功能,而在某些场景下,我们需要使用类似的远程硬盘功能,这样能非常方便地操作对方电脑磁盘的目录、以及传送文件,这次我们将给出一个完整的... 目录引言一. 远程硬盘功能展示二. 远程硬盘代码实现1. 底层业务通信实现2. UI 实现三. De

使用WPF实现窗口抖动动画效果

《使用WPF实现窗口抖动动画效果》在用户界面设计中,适当的动画反馈可以提升用户体验,尤其是在错误提示、操作失败等场景下,窗口抖动作为一种常见且直观的视觉反馈方式,常用于提醒用户注意当前状态,本文将详细... 目录前言实现思路概述核心代码实现1、 获取目标窗口2、初始化基础位置值3、创建抖动动画4、动画完成后

QT6中绘制UI的两种方法详解与示例代码

《QT6中绘制UI的两种方法详解与示例代码》Qt6提供了两种主要的UI绘制技术:​​QML(QtMeta-ObjectLanguage)​​和​​C++Widgets​​,这两种技术各有优势,适用于不... 目录一、QML 技术详解1.1 QML 简介1.2 QML 的核心概念1.3 QML 示例:简单按钮

ubuntu20.0.4系统中安装Anaconda的超详细图文教程

《ubuntu20.0.4系统中安装Anaconda的超详细图文教程》:本文主要介绍了在Ubuntu系统中如何下载和安装Anaconda,提供了两种方法,详细内容请阅读本文,希望能对你有所帮助... 本文介绍了在Ubuntu系统中如何下载和安装Anaconda。提供了两种方法,包括通过网页手动下载和使用wg

ubuntu系统使用官方操作命令升级Dify指南

《ubuntu系统使用官方操作命令升级Dify指南》Dify支持自动化执行、日志记录和结果管理,适用于数据处理、模型训练和部署等场景,今天我们就来看看ubuntu系统中使用官方操作命令升级Dify的方... Dify 是一个基于 docker 的工作流管理工具,旨在简化机器学习和数据科学领域的多步骤工作流。

如何在Ubuntu上安装NVIDIA显卡驱动? Ubuntu安装英伟达显卡驱动教程

《如何在Ubuntu上安装NVIDIA显卡驱动?Ubuntu安装英伟达显卡驱动教程》Windows系统不同,Linux系统通常不会自动安装专有显卡驱动,今天我们就来看看Ubuntu系统安装英伟达显卡... 对于使用NVIDIA显卡的Ubuntu用户来说,正确安装显卡驱动是获得最佳图形性能的关键。与Windo