0

追加した 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();
        }
    }
}

すべてがコンパイルされますが、mastrategy... フォームでボタン コントロールをクリックすると、空白の CrossPicsForm ウィンドウが表示されます。ダーン!

4

1 に答える 1

0

リソース名のつづりを間違えても例外は発生しません。ResourceManager は null を返すだけで、BackgroundImage プロパティは変更されません。通常は、.png 拡張子なしで「Moving_Avgs_Cross」という名前になります。

代わりに、リソース デザイナーによって追加されたプロパティを使用することをお勧めします。それは似ているはずです:

crossPic.BackgroundImage = Properties.Resources.Moving_Avgs_Cross;

IntelliSense を使用して、ここで成功の落とし穴に陥るのを助けてください。

于 2013-10-19T17:34:14.080 に答える