用资源文件路径替换绝对文件路径
Replacing Absolute file path by Resource file path
我为现有软件 (Revit) 创建了一个加载项,我想在加载项的按钮中嵌入一个图像(我公司的徽标)。
这是我目前的代码:
'Set the large image shown on button
Dim uriImage As New Uri("\10.8.60.3\Shared\REVIT\FSElogo.png")
Dim largeImage As New BitmapImage(uriImage)
MainButton.LargeImage = largeImage
它工作得很好并且徽标显示正确,但是它需要计算机能够访问位于 \10.8.60.3
的服务器。在家工作时,我们无法访问此服务器,因此 Revit 在启动时会抛出错误。
所以我尝试将 FSElogo.png
文件作为 Resource
添加到我的 VB.Net 项目中,然后尝试使用 My.Resources
访问图像,有效地消除了需要用于要使用的外部图像。
嗯,我无法让它工作。
我尝试用
替换上面的代码
MainButton.LargeImage = CType(My.Resources.ResourceManager.GetObject("FSElogo.png"), Windows.Media.ImageSource)
但是没用。它不会引发错误,但按钮上不会显示任何图像。
如果我不将我的 Object
转换为 ImageSource
我会收到 implicit conversion from Object to Image
错误,我什至不确定我的 ResourceManager
是否真的返回对象 FSElogo.png
.
我做错了什么?
我将 VS 提供的按钮与 .BackgroundImage
属性 一起使用。请注意,文件的扩展名不包含在资源标识符中。如果这不起作用,您将必须准确解释您是如何将资源添加到项目中的。
MainButton.BackgroundImage = My.Resources.FSElogo
我为现有软件 (Revit) 创建了一个加载项,我想在加载项的按钮中嵌入一个图像(我公司的徽标)。
这是我目前的代码:
'Set the large image shown on button
Dim uriImage As New Uri("\10.8.60.3\Shared\REVIT\FSElogo.png")
Dim largeImage As New BitmapImage(uriImage)
MainButton.LargeImage = largeImage
它工作得很好并且徽标显示正确,但是它需要计算机能够访问位于 \10.8.60.3
的服务器。在家工作时,我们无法访问此服务器,因此 Revit 在启动时会抛出错误。
所以我尝试将 FSElogo.png
文件作为 Resource
添加到我的 VB.Net 项目中,然后尝试使用 My.Resources
访问图像,有效地消除了需要用于要使用的外部图像。
嗯,我无法让它工作。 我尝试用
替换上面的代码MainButton.LargeImage = CType(My.Resources.ResourceManager.GetObject("FSElogo.png"), Windows.Media.ImageSource)
但是没用。它不会引发错误,但按钮上不会显示任何图像。
如果我不将我的 Object
转换为 ImageSource
我会收到 implicit conversion from Object to Image
错误,我什至不确定我的 ResourceManager
是否真的返回对象 FSElogo.png
.
我做错了什么?
我将 VS 提供的按钮与 .BackgroundImage
属性 一起使用。请注意,文件的扩展名不包含在资源标识符中。如果这不起作用,您将必须准确解释您是如何将资源添加到项目中的。
MainButton.BackgroundImage = My.Resources.FSElogo