2017-04-21 10 views
0

C#でチェックボックスを作成することに固執しています。私は、動的に生成された画像ボックスのボタンクリック時にチェックボックスを動的に生成したい。私の期待通りに私のC#コードは動作しません。次のコードはフォーム上でチェックボックスを生成しますが、画像ボックスでは生成しません。私のチェックボックスがあなたがして、フォームにチェックボックスを追加しているCでピクチャボックスのチェックボックスを動的に生成する#

Checkbox on picturebox

private void btndlt_Click(object sender, EventArgs e) 
{ 
    add_chkbx(); 
} 

public CheckBox add_chkbx() 
{ 
    CheckBox chk = new CheckBox(); 
    chk.Location = new System.Drawing.Point(15, 190); 
    chk.Size = new System.Drawing.Size(30, 30); 
    this.Controls.Add(chk); 
    return chk; 
} 
+0

のPictureBoxは、子コントロールを含めることができます。 'YourPictureBox.Controls.Add(chk);'を使い、必要に応じてチェックボックスを合わせます。 –

答えて

0

は、このコードを試してみてください。

public void add_chkbx() 
{ 
    // for each picture box add check box 
    foreach (Control cont in this.Controls) 
    { 
     if (!(cont is PictureBox)) 
      continue; 
     CheckBox chk = new CheckBox(); 
     chk.Size = new System.Drawing.Size(30, 30); 
     chk.BackColor = Color.Transparent; // transparent color for checkbox 
     cont.Controls.Add(chk); 
    } 
} 

private void Button1Click(object sender, EventArgs e) 
{ 
    add_chkbx(); 
} 
+0

あなたのソリューションのために働いています。R. Gadeev – Ren

+0

あなたは大歓迎です、Ren。私の答えを受け入れてください:D –

0

をピクチャボックスにリンクされますように

私にいくつかのアイデアを提案してください:

this.Controls.Add(chk); 

これは、適切な親を割り当てあなたのチェックボックスに。子コントロールを含む他のコントロールにコントロールを追加するには、同じ操作を行う必要があります。ですから、例えば:

パネルにチェックボックスを追加するには:

panel.Controls.Add(chk); 

をピクチャボックスにチェックボックスを追加するには、次のように

pictureBox.Controls.Add(chk); 

をと。

+0

私はそれを試みました。しかし、コントロールintellisenseはpictureboxで表示されていません。コントロールをpictureboxに追加することはできません。 – Ren

関連する問題