c# wpf 相对路径问题

c# wpf 相对路径问题,第1张

xaml调用cs一般是在cs里面定义属性,然后xaml的属性绑定到后台,此时一般需要设置datacontext。cs调用xaml最简单的是xaml里定义控件名,后台可以直接引用。不过MVVM模式不提倡cs调用xaml,通过一系列的绑定可以解决这个问题。

那就只能用绝对路径

img1Source = new BitmapImage(new Uri("完整路径/Capturejpg",UriKindAbsolute));

     在软件开发过程中,图形元素必不可少,而在WPF中如果使用jpg或png等格式,在应用到Button等控件时的样式时,常常需要做MouseEnter,MouseDown鼠标事件提供不同的颜色或特效。一个图标得分别生成三种颜色才行。如下:

        Normal:

      MouseEnter:

       MouseDown:

且jpg与png等文件,如果生成大尺寸应用于小的图标会产生锯齿,如果生成小尺寸应用于大的图标则会模糊。

        所以,最佳的方式是使用系统能直接识别的特殊符号,如✎❤等,可以拷贝到控件的Content或Text等属性中直接使用,在Trigger或事件中更改Foreground即可,且它在WPF渲染中是矢量的,不必担心它会产生锯齿或模糊等问题。但是系统能直接识别的图标只有部分且对于其它第三方图形它就无能为力了。所以对于第三方的图形,最好的解决方式是将图形转化为Path数据,可在Path控件中使用。

   开始

方式1:

网上查找图标直接复制数据,适用于现有图形Path数据;若只是没有Path数据,请看方式2。

推荐一个非常不错的图标网站阿里的iconfont,下面以这个图标网站为示例获取Path的数据 。

链接-> iconfont

 1 进入搜索找到想要的图标(注意,某些图标只是帖个,这种不是Path数据的无法获取,必须找图标是Path数据的)。然后点击下载按钮。

2在新的窗体中,按F12调出查看网页代码。当前在火狐浏览器为例,点击选取页面元素按钮后,鼠标移动到图标并点击,选择图标元素。

注意,选中的元素可能有多个嵌套,选中后下方代码出现Path的那个才是正确的。

3双击该段代码,将d=""里面的数据选中并拷贝到Geometry资源中:

4资源调用:

方式2:

没有Path数据 ,只有的将图形元素转换成Path数据直接在项目中引用。

使用的工具有:

        1VisualStudio

        2Photoshop

        3Microsoft Expression Design 4

       接下来,跟着我一步步 *** 作即可:

1 将要转换的图标文件导入Photoshop,然后选择快速选择工具:

2鼠标点击选中要转换的图形,如图中4个方框就是:

3右键选中的图形,选择建立工具路径,后面d出窗口设置容差,可根据图形的精度决定。

 4在 路径 选项卡可以看到刚刚添加的工作路径,点击添加图层蒙版

 

5在属性选项卡中点击选择矢量蒙版。此时在图层中可以看到有图层、图层蒙版和矢量蒙版三个。

6依次点击 文件--> 存储为  将文件将文件导出为psd文件。

 Photoshop的处理到此结束 ,接下来是使用Microsoft Expression Design 4将psd文件转换为Path

7 在Microsoft Expression Design 4中打开刚刚生成的psd文件,直接按Ctrl+E导出,格式选择XAML WPF资源字典

  打开刚刚生成的xaml文件,将引号内的Clip或ClipGeometry的数据复制(字符可能非常长如果对精度要求不是那么高,可以后面写个方法把小数点后的值去掉),在Path的Data属性中粘贴。

   效果图

  最后

       有比较简单的图形还是可以在Microsoft Expression Design 4中画出来,画的图形会比PS抠的精准,在PS中如果抠不好可能导致图形面目全非。

还有一种方式是直接在PS中生成Path数据,复制数据后做修改,有喜欢这种方式的试试吧

如何通过PS选取获取WPF路径 - 走看看

 

wpf

c#

ui设计

天水盛凡专利代办:专利申请价格全透明,无隐性收费!

盛凡知识产权

广告

JPG,PNG等格式的转换的ICON保存为ICO文件

449阅读·0评论·0点赞

2011年11月6日

WPF学习之绘图和动画

56W阅读·17评论·37点赞

2012年11月13日

Note插件式开发中WPF的ICON修改方法

34阅读·0评论·2点赞

2022年12月21日

WPF获得PNG外观Path数据

9811阅读·8评论·0点赞

2017年8月14日

利用Path路径设计的按钮图标(Silverlight)

1131阅读·0评论·0点赞

2015年9月14日

在WPF中使用SVG矢量图

3833阅读·0评论·1点赞

2021年8月3日

好消息:专利申请并不麻烦,这有专利申请流程及费用,立即查询!

盛凡知识产权

广告

Expression Design 4工具与Expression Blend 4工具

910阅读·0评论·0点赞

2019年3月1日

android vector矢量图画图详解

7543阅读·0评论·6点赞

2016年5月8日

WPF中如何在Image控件中显示动态生成的Path?

1516阅读·0评论·0点赞

2018年12月20日

PSD路径转换为 WPF path 的data

259阅读·0评论·0点赞

2018年4月2日

C# 绘图3 路径Path & OnPaint方法

1442阅读·0评论·1点赞

2017年2月13日

Android进阶之路 - Uri、Path、File、Bitmap 转换方式

5307阅读·1评论·1点赞

2018年10月13日

WPF开发教程

23W阅读·5评论·50点赞

2019年7月2日

WPF绘制矢量图(网址收藏)

1428阅读·0评论·0点赞

2020年1月8日

WPF中制作立体效果的文字或LOGO图形

14W阅读·0评论·1点赞

2008年4月20日

CMAKE 批量获取目录下指定类型文件并转换为相对路径

810阅读·0评论·1点赞

2021年3月28日

WPF大缩小后显得模糊/锯齿怎么办

685阅读·0评论·1点赞

2020年5月18日

WinForm和WPF中使用字体图标ICON

1369阅读·0评论·0点赞

2022年2月16日

Svg 图标转换成Wpf path Geometry

2824阅读·2评论·0点赞

2020年12月22日

去首页

看看更多热门内容

存储在 Resources 中的资源可以从在应用程序的 Application 对象 范围内执行的任何代码(即,可访问 Current 的代码)中获得。 另外,还可在资源查找路径中使用 Resources。 Resources 是从标记和代码中都可以设置的键/值对字典,如下所示:// Set an application-scope resource

ApplicationCurrentResources["ApplicationScopeResource"] =

BrushesWhite; XAML:

使用代码获取资源: Brush whiteBrush = (Brush)ApplicationCurrentResources["ApplicationScopeResource"]; 当使用 Resources 时有两个注意事项。 首先,字典的 键 是一个对象,因此设置和获取属性值时需要准确使用相同的对象实例(请注意:使用字符串键时该键区分大小写)。 其次,字典的 值 是一个对象,因此获取属性值时需要将该值转换成需要的类型。

看截图,整个解决方案里应该只有EXAMPLEAPP是应用程序项目,其他的看着像是类库和资源的项目,我一般这么写EnvironmentCurrentDirectory,这个目录就是当前EXE的工作目录,当调试的时候也就是BIN/DEBUG目录,相应需要的引用资源你可以尝试直接放到DEBUG目录下进行引用,希望我的回答对你有帮助。

string tmp_path="";

SystemWindowsFormsFolderBrowserDialog fbd = new SystemWindowsFormsFolderBrowserDialog();

fbdShowDialog();

if (fbdSelectedPath != stringEmpty)

{

tmp_path = fbdSelectedPath;

。。。。。

}

以上就是关于c# wpf 相对路径问题全部的内容,包括:c# wpf 相对路径问题、在WPF里面如何引用相对路径(非资源)、设计文件转曲转path等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9314413.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存