C#のforeachに苦しめられてます。
foreachで複数のDLLの情報をもってきて、一つのコレクションに集めます。集めたコレクションの次のコレクションに移ると最初のコレクションの情報が上書きされてしまうのが悩みです。
foreach (var e in dll)
{
var PictureBox1 = new PictureBox();//画像が表示される場所はずれて重ならなくなっている。
PictureBox1.Click += (s, e) =>
{
既につくられているtextBoxの削除("textBoxの名前");//名前指定で削除できる自作関数
既につくられているbuttonの削除("buttonの名前");
関数();
}
}
DLL1.dll
関数(){
textBoxの作成();
buttonの作成();
クリックしたときのイベント{
textBox.Text="DLL1";
}
}
DLL2.dll
関数(){
textBoxの作成();
buttonの作成();
クリックしたときのイベント{
textBox.Text="DLL2";
}
}
どちらの画像(PictureBox1)をおしても、ボタンとtextboxが作られますが、なぜか、2回目の画像のクリックではボタンの削除がうまくいかず、textBoxだけが削除され作り直されます。
さらに、どちらのボタンを押してもtextboxにはDLL2が入力されてしまいます。
どのように解決したらよいでしょうか?