C# 无法从图片资源以编程方式设置窗体背景图像

C# 无法从图片资源以编程方式设置窗体背景图像,c#,winforms,C#,Winforms,我只想将另一个表单的背景图像设置为我添加的png文件图片资源 我的MAstrategyBldrForm.cs文件中有以下内容: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; n

我只想将另一个表单的背景图像设置为我添加的png文件图片资源

我的MAstrategyBldrForm.cs文件中有以下内容:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace MAStrategyBuilder
{
    public partial class MAstrategyBldrForm : Form
    {

        private CrossPicsForm crossPic;

        public MAstrategyBldrForm()
        {
            InitializeComponent();

            crossPic = new CrossPicsForm();
        }
。。。。 .... .... 稍后在同一文件中:

private void MAcrossPicButton_Click(object sender, EventArgs e)
{
    crossPic.BackgroundImage = (Bitmap) (Properties.Resources.ResourceManager.GetObject("Moving Avgs Cross.png"));
    crossPic.Show();
}
。。。。 .... 在我的CrossPicsForm.cs文件中,我有:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace MAStrategyBuilder
{
    public partial class CrossPicsForm : Form
    {
        public CrossPicsForm()
        {
            InitializeComponent();
        }
    }
}

一切都在编译,但当我在MastStrategy中单击我的按钮控件时。。。窗体中,将显示一个空白的CrossPicsForm窗口。该死

错误拼写资源名称时不会出现异常,ResourceManager只返回null,而BackgroundImage属性保持不变。如果您这样做了,它通常会被命名为“Moving_Avgs_Cross”,没有.png扩展名

请使用资源设计器添加的属性。这应该类似于:

crossPic.BackgroundImage = Properties.Resources.Moving_Avgs_Cross;

使用IntelliSense可以帮助您在这里获得成功。

只是一个建议:您是否尝试删除图像名称中的空白?请尝试:var WhatIsMyValueWhenBreakPointHit=(位图)(Properties.Resources.ResourceManager.GetObject(“Moving Avgs Cross.png”);