0

ボタンのテキストが含まれている場合、ボタンの画像を変更するにはどうすればよいList<>ですか?

ボタン名とテキストを Dictionary に追加しました。部屋名のリストもあります。フォームには 40 個のボタンがあり、各ボタンには番号が付いています。各ボタンは部屋を表し、ボタンのテキストは部屋番号です。マイリスト NameRoom は予約済みの部屋のリストです。予約されているボタンの画像を変更しようとしています。テキストを変更しようとしているのではなく、ボタンの画像を変更しようとしています。ありがとう

foreach (int roomN in NameRoom)
{
    if (dictionary.ContainsKey(roomN))
    {
        string buttonName = dictionary[roomN];
        Button button = new Button();
        button.Name = buttonName;

        //ImageBrush myBrush = new ImageBrush();
        //var urisource = new Uri(@"Resources\dolu.jpg", UriKind.Relative);
        //myBrush.ImageSource = new BitmapImage(urisource);
        //button.BackgroundImage = myBrush;
        button.Image = ((System.Drawing.Image)(Properties.Resources.Merdivan));

        //button.Image = System.Drawing.Image.FromFile(@"Resources\dolu.jpg");   
   }
}
4

2 に答える 2

0

ウィンフォーム?はいの場合は、次のようにしてみてください。

        foreach (int roomN in NameRoom)
        {
            if (dictionary.ContainsKey(roomN))
            {
                string buttonName = dictionary[roomN];
                Control[] matches = this.Controls.Find(buttonName, true);
                if (matches.Length > 0 && matches[0] is Button)
                {
                    Button button = (Button)matches[0];
                    button.Image = ((System.Drawing.Image)(Properties.Resources.Merdivan));
                }
            }
        }
于 2013-05-16T14:35:20.247 に答える