我在C#中创建了一个Windows窗体应用程序。我设计了与图片框和背景图片的接口。但我需要在硬编码后添加图片,我不知道如何自定义这些界面。 (基本上是主题),背景图片和图片框图片。
答案 0 :(得分:2)
如果您在设置背景时查看设置了什么属性,您还可以更改该运行时..通过编写正确的代码。
DevExpress有很多主题,但不是免费的。 另请查看此codeplex文章
答案 1 :(得分:1)
您希望何时进行此更改?希望您可以添加一些事件处理程序,允许您添加将在您想要执行此修改时执行的代码。
至于如何进行更改。您将需要组件的成员变量的名称。
说,你有一个名为PictureBox
的{{1}}。然后你可以这样做:
PicMyPicture
或
PicMyPicture.Image = image;
或类似的其他属性和组件。
请查看您的IDE,很可能它允许您定义事件处理程序。对于intance,您可以在Visual Studio的属性窗口中找到组件的事件(您使用的是Visual Studio吗?),还是其他IDE中的类似位置。
好的,但上面有一个问题......你从哪里得到那张照片?
好吧,它可能来自文件,应用程序中的资源,从Internet下载,从数据库中恢复,甚至在运行时生成。
您案例的公共资源越多,资源和文件就越多,所以我将介绍这些内容。
此代码从磁盘加载图像:
PicMyPicture.BackGroundImage = image;
您可能想知道......如果我不知道最终用户将应用程序放在何处,我该如何编写路径?好吧,要将文件从相对路径加载到应用程序的工作目录,您可以这样做:
var image = Image.FromFile(@"C:\path\path\some.png");
此代码从应用程序中的资源加载图像:
var path = Environment.CurrentDirectory;
if (!path.EndsWith(Path.DirectorySeparatorChar.ToString()))
{
path += Path.DirectorySeparatorChar;
}
path += "some.png";
var image = Image.FromFile(path);
您必须确保已经预先将资源添加到项目中。查看IDE上的文档以了解具体方法。