当前位置:  开发笔记 > 开发工具 > 正文

WPF:"类型'String'的值无法转换为'System.Windows.Media.ImageSource'."

如何解决《WPF:"类型'String'的值无法转换为'System.Windows.Media.ImageSource'."》经验,为你挑选了3个好方法。

我正在尝试设置WPF图像的来源.

XAML的工作原理:


Visual Basic失败:

ImageThing.Source = "images/Thing.png"

......有这个例外:

"String"类型的值无法转换为"System.Windows.Media.ImageSource".

如何创建我需要的System.Windows.Media.ImageSource?


更新

此代码改编自MSDN示例:

Dim bmp As New BitmapImage()
bmp.BeginInit()
bmp.UriSource = New Uri("images/Thing.png", UriKind.Relative)
bmp.EndInit()
ImageThing.Source = bmp

Quintin Robi.. 11

WPF使用隐式类型转换器将xaml字符串转换为期望的类型.在代码中,您通过对象类型静态绑定...如果您查看此处的示例,它将显示如何将source属性设置为以编程方式从本地uri生成的BitmapImage.



1> Quintin Robi..:

WPF使用隐式类型转换器将xaml字符串转换为期望的类型.在代码中,您通过对象类型静态绑定...如果您查看此处的示例,它将显示如何将source属性设置为以编程方式从本地uri生成的BitmapImage.



2> CodeMonkey13..:

你可能需要做这样的事情

Uri i = new Uri("images\\Thing.png");

请记住,您需要使用\而不是/为Windows文件系统

看看这里



3> cjbarth..:

它可以比上面更容易:

ImageThing.Source = New BitmapImage(New Uri("images/Thing.png", UriKind.Relative))

推荐阅读
和谐啄木鸟
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有