-2

我在 C# 中创建了一个 Windows 窗体应用程序。我设计了带有图片框和背景图片的界面。但是我需要在硬编码后添加图片,我不知道如何自定义这些界面。(基本上是主题)、背景图片和图片框图片。

4

2 回答 2

2

如果您查看设置背景时设置的属性,您还可以更改该运行时。通过编写正确的代码。

DevExpress有很多主题,但不是免费的。也看看这个codeplex文章

于 2012-10-09T06:21:16.470 回答
1

您希望何时进行此更改?希望您可以添加一些事件处理程序,允许您添加在您想要进行此修改时将执行的代码。

至于如何进行更改。您将需要组件的成员变量的名称。

说,你有一个PictureBox名字叫PicMyPicture. 然后你可以这样做:

PicMyPicture.Image = image;

或者

PicMyPicture.BackGroundImage = image;

或类似的其他属性和组件。

请查看您的 IDE,它可能允许您定义事件处理程序。例如,您可以在 Visual Studio 的属性窗口(您使用的是 Visual Studio 吗?)或其他 IDE 中的类似位置找到组件的事件。


好的,但是上面有一个问题......你从哪里得到那个图像?

嗯,它可能来自文件、应用程序中的资源、从 Internet 下载、从数据库中恢复,甚至在运行时生成。

您的案例更常见的是资源和文件,因此我将介绍这些内容。

此代码从磁盘加载图像:

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);

此代码从应用程序中的资源加载图像:

var image = new Bitmap
(
    System.Reflection.Assembly.GetEntryAssembly().
    GetManifestResourceStream("MyProject.Resources.myimage.png")
);

您必须确保事先已将资源添加到项目中。查看 IDE 上的文档以了解如何操作。

于 2012-10-09T06:32:42.530 回答