1

私はpictureboxを動的に生成しています...今、私はその絵のボックスに別のイメージを表示しなければなりません。特定の絵のボックスをクリックすると、次のフォームの絵のボックスに表示されます。クリックして....どのように私はそれを行うことができます...私に返信..ありがとうアドバンス..

私のコーディングは

for(int i = 0; i

            shapes[i].Location = new Point(Left,Top);
            Left += 200;
            Top += i + 0;
            shapes[i].Size = new Size(150, 150);
            shapes[i].BackColor = Color.Black;
            shapes[i].Visible = true;
            shapes[i].BorderStyle = BorderStyle.FixedSingle;
            this.Controls.Add(shapes[i]);

            shapes[i].Click += new EventHandler(PictureBox_Click);                

        }

プライベートvoid PictureBox_Click(オブジェクト送信者、EventArgs e)         {

        int imageid = 1;


        ClsProperty.ImageId = imageid;


        fd2 = new frmImageDisplay(imageid, ClsProperty.ipaddress);


        fd2.Show();





    }


  • それはasp.netまたはwinformsですか? - Fredrik Mörk
  • コードサンプルをクリーンアップし、変数がどこにあるのか、関数が何を呼び出すのかをコメントし、PictureBoxesを1つずつ追加しているのか、あらかじめ定義されたPictureBoxを左から右に移動するのかを明確にするフォーム上のピクチャボックスのセットについては、より有用な回答が得られると思います。 - BillW

3 답변


2

イベントハンドラの「送信者」は、クリックされた画像ボックスになります。

private void PictureBox_Click(object sender, EventArgs e) {

    PictureBox senderAsPictureBox = sender as PictureBox;
    //this is the picture box that got clicked

    int imageid = 1;
    ClsProperty.ImageId = imageid;
    fd2 = new frmImageDisplay(imageid, ClsProperty.ipaddress);
    fd2.Show();
}


  • ちょっと私のために便利...私はアウトプットを得た... Thanx Yar .. - Suryakavitha

0

とにかくあなたのコードを表示するのが役に立ちますが、 ピクチャボックスを動的に作成する場合は、.Click + =メソッド名のようなコードを追加できます。これはもっと助けになるコントロールを追加するときに動的にイベントをコントロールに追加する方法について

それが役に立てば幸い


  • ありがとうLakhlaniPrashant ...しかし私は私のコードにその行を書いた...問題は、画像ボックスがクリックされた....クリックイベント私は次のフォームのピクチャボックスにその特定の画像を渡す必要があります...どのように私は! - Suryakavitha

0

さて、私はそれが簡単だと思う、イベントの最初の引数は常にオブジェクトの送信者です、 ピクチャボックスオブジェクトにキャストしてIDプロパティを読み取ると、問題が発生しても前に進むことができます。


  • ねえ、私は正しい出力を持っています....その非常に有用な私のために...ありがとうヤー... - Suryakavitha

関連する質問

最近の質問