- ベストアンサー
WPFでCanvas の子要素にアクセスする方法
C#でWPFに取り組んでいるのですが・・・現在,詰まっています. 事前に List<Canvas> MyList = new List<Canvas>(); Canvas C =new Canvas(); Rectangle R = new Rectangle(); C.Child.Add(R); MyList.Add(C); としておき あとで,MyList経由でCやRの状態を変更したいのですが, この場合だと,「 MyList[i].~ 」でCanvasは操作できるのですが Rectangleはどうやって操作すればよいのでしょうか?? どなたかご存知の方がいらしましたら教えていただけないでしょうか? 宜しくお願いします!!
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
例えば・・・ double dX = ((Rectangle)MyList[i].Children[j]).RadiusX; とかかな? Rectangleクラス1つだけならjが0になるかと。
その他の回答 (1)
- AKARI0418
- ベストアンサー率67% (112/166)
操作できると思います。 List<>には参照を格納しているわけですから、Rectangle用のList<>も作成すればよいのではないでしょうか? ほかには、宣言後にNameプロパティを設定し、FindName()メソッドを使用してアクセスするなどがよいのではないでしょうか?
お礼
AKARI0418さん,回答ありがとうございます!! Rectangleのリストを作ってしまう方法は私も考えてはいたのですが・・・・リストを2つも作るのはどうなのかと思っちゃいまして・・・・. あ~,NameプロパティとFindName()ですか・・・・すっかり存在を忘れてました!! 今回は使わないんですけど今後活かしてみます!! ありがとうございました!!
お礼
reset_catさん!! ありがとうございます!! 私が知りたかったのは,まさにこの方法です!! そうか・・・・・Childの後に[]か・・・・・答えを見て納得ですw ありがとうございました!!おかげで問題解決です!!