C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 101 を表示中)
■60214 / )  Re[5]: [C#] List化された構造体のコピー
□投稿者/ junjun (2回)-(2011/06/23(Thu) 06:10:12)
επιστημη さん
逆運の覇者 さん
Azulean さん

皆様回答ありがとうございます。
僕の言葉足らずな意図を組んでもらったり、、、ほんとすみません><



僕としては、Azulean さんがおっしゃるとおり
 「Form1で取得した 「List<AAA> aaa = new List<AAA>();」で宣言した構造体ListデータをForm2で使えるようにしたい」
を実現したいと思っています。


逆運の覇者 さんがコメントしてくれたやり方では、すでにLoadしているForm1との
紐付けができるのかな?
ちょっと僕にはやりかたがよくわかりませんでした(スミマセン、、無知で><)


いろいろと考えたのですが、、、、
Form2での変数宣言をするときに、Form1で宣言されているpublic struct AAAで
宣言して、AddRangeでAddしたら、それっぽい動きをしました。
(επιστημηさんのコメント参考にしてみました)

*Form1
   public struct AAA
   {
       public int a;
   }

   public List<AAA>aaa = new List<AAA>();

   private void button1_Click(object sender, EventArgs e)
   {
     Form2 f = new Form2();
     f.aaa.AddRange(aaa);
       f.ShowDialog();
       f.Dispose();
   }


*Form2
   public List<Form1.AAA> aaa = new List<Form1.AAA>();

   private void button1_Click(object sender, EventArgs e)
   {
       for(int i = 0;i < aaa.Count;i++){
           Debug.Write(aaa[i].a);
       }
   }


このやり方は正しいやり方なのでしょうか?
(Form1の構造体をForm2で使うってのが、もやもやします、、、、><)

それとも、構造体をPublicで宣言する場合には決められた(一般的な)方法が
あるのでしょうか?

質問ばかりで申し訳ないです。
協力をよろしくお願いします。

返信 編集キー/


管理者用

- Child Tree -