我对Windows窗体(vb.net)缺乏经验,而且我有一个相当愚蠢的问题。
我正在打开一个别人的旧项目,并且表单上有一个PictureBox控件。 PictureBox有一张照片,我试图在计算机上找到照片的位置,但找不到它。
在ASPX中,我可以查看背后的代码并找出标签指向的位置(对于照片)。
有没有办法为vb.net做到这一点?
更新 对于我的对象,唯一存在的代码是image属性:
Me.pbTotal.Image = CType(resources.GetObject("pbTotal.Image"), System.Drawing.Image).
答案 0 :(得分:2)
答案 1 :(得分:1)
如果没有在属性窗口中设置,可以通过右键单击图片框来查看它,它将使用image属性在代码中设置。
答案 2 :(得分:0)
PictureBox控件为您提供了两个选项,用于设置显示在其上的图像。您可以使用ImageLocation
属性或Image
属性执行相同的任务。
如果将ImageLocation
设置为有效图片/图片的文件名或网址,则会显示图片,您也可以通过Image
属性访问该图片。如果您应该使用Image
属性来设置显示的图像,如果您事先不知道它,将无法知道正在显示的图像的物理位置。
根据您在问题中粘贴的代码,无法检索图像文件的路径/网址。更复杂的是,图像是从项目的资源中加载的,因此在找到原始文件之前,任何解析路径/ url的尝试都必须首先通过项目资源,即使这是可能的,但出于所有实际目的,它是太麻烦了。
简而言之,如果您希望稍后获取PictureBox中加载的图像的路径/网址,请使用ImageLocation
属性而不是Image
属性来设置图像待显示。
答案 3 :(得分:0)
好的,我刚刚找到了真正的答案。是的,它在资源文件中,但不适用于项目本身。我不知道表单本身也有资源文件(.resx)。
在visual studio 2010中(不确定其他人),隐藏.resx文件。如果单击解决方案资源管理器工具栏中的“显示所有文件”选项,您将看到该表单可以向下钻取。在.resx文件中,我能够找到我的图像。