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