ItemsControl
から派生したコンポーネントがある場合、そのコンポーネントのコレクションにアクセスして特定のアクションを実行するためにループすることはできますか?私は現時点で簡単な方法を見つけることができないようです。ItemsControlの子にどのようにアクセスすればよいですか?
答えて
セブのに似ていますが、おそらくより良い性能を持つソリューション:
for(int i = 0; i < itemsControl.Items.Count; i++)
{
UIElement uiElement =
(UIElement)itemsControl.ItemContainerGenerator.ContainerFromIndex(i);
}
私はItemsControl.Items[index]
が動作しないと仮定していますか?
私は面白くないし、自分自身をチェックしていない - それはちょうど私の最初の推測です。ほとんどの場合、データバインドされていても、コントロールにはアイテムのインデクサープロパティがあります。
これはdoesnの " 「子」要素(コントロール)を取得し、リストの項目のみを検索します。リストの項目は、必ずしもコントロールではありません。 –
いいえ、データソースとデータテンプレートを使用している場合は、データテンプレートで使用する文字列のロードでは、アイテムとして返された文字列を取得します。 –
十分です。私はあなたのコメントが役に立つかもしれないので私の答えを残しておきます。 –
はItemsControl.Items
プロパティを使用します。
foreach (var item in itemsControl1.Items)
{
Console.WriteLine(item.ToString());
}
コメントを繰り返すには、データソースとデータテンプレートを使用するとします(例:データテンプレートで使用する文字列の負荷、あなたは、 –
アイテムとして返された文字列を取得します。その後、あなたはSebのソリューションと一緒に行くべき – Oskar
を参照してください。これはあなたを助けている場合:
foreach(var item in itemsControl.Items)
{
UIElement uiElement =
(UIElement)itemsControl.ItemContainerGenerator.ContainerFromItem(item);
}
を制御し、UIElement
で論理項目間の違いがあります。
ItemsControl
識別するには年代に(ToggleButton
のような)データ・バインド子コントロールを、あなたがこれを使用することができます。
for (int i = 0; i < yourItemsControl.Items.Count; i++)
{
ContentPresenter c = (ContentPresenter)yourItemsControl.ItemContainerGenerator.ContainerFromItem(yourItemsControl.Items[i]);
ToggleButton tb = c.ContentTemplate.FindName("btnYourButtonName", c) as ToggleButton;
if (tb.IsChecked.Value)
{
//do stuff
}
}
- 1. Reactで子ノードにアクセスするにはどうすればよいですか?
- 2. jqueryオブジェクトの直接の子孫にきれいにアクセスするにはどうすればよいですか?
- 3. Sinatraのフォームフィールドにはどのようにアクセスすればよいですか?
- 4. form_tagのレスポンスにどのようにアクセスすればよいですか?
- 5. この変数にはどのようにアクセスすればよいですか?
- 6. ItemsControlで各コントロールの後にボタンを追加するにはどうすればよいですか?
- 7. リスト<string>をItemsControlにバインドするにはどうすればよいですか?私のプレゼンターで
- 8. は、どのように私は、可変クッキーの配列の子にアクセスするか、私はuser_idのアクセスするにはどうすればよい
- 9. ウィンドウのアクセス修飾子をpublicからinternalに変更するにはどうすればよいですか?
- 10. データバインドされたItemsControl内のチェックされたラジオボタンにはどのようにアクセスできますか?
- 11. XML文書の子ノードの値にアクセスするにはどうすればよいですか?
- 12. ItemsControlのItemのコードの背後にあるItemsControlのItemsSource要素にアクセスするにはどうすればいいですか?
- 13. ItemsControlの項目にフォーカスを強制するにはどうすればよいですか?
- 14. iframeから親フレームにアクセスできないようにするにはどうすればよいですか?
- 15. OpenSearchServerのデータベースフィールドにアクセスするにはどうすればよいですか?
- 16. iPhone 4のUDIDにアクセスするにはどうすればよいですか?
- 17. コントローラのエイリアス値にアクセスするにはどうすればよいですか?
- 18. iOSのカスタムキーボード:UITextFieldにアクセスするにはどうすればよいですか?
- 19. ウェブ上のコピーバッファにアクセスするにはどうすればよいですか?
- 20. WARのルートにアクセスするにはどうすればよいですか?
- 21. アプリケーションのバージョンにアクセスするにはどうすればよいですか?
- 22. MacBookのウェブカメラにアクセスするにはどうすればよいですか?
- 23. 別のエンジンモデルにアクセスするにはどうすればよいですか?
- 24. 自分のパブリックメソッドにアクセスするにはどうすればよいですか?
- 25. iOSのコンパスにアクセスするにはどうすればよいですか?
- 26. Messengerプラットフォームのアプリダッシュボードにアクセスするにはどうすればよいですか?
- 27. Djangoフォームフィールドのデータにアクセスするにはどうすればよいですか?
- 28. スーパークラスのインスタンスvarにアクセスするにはどうすればよいですか?
- 29. Dartのargv /コマンドラインオプションにアクセスするにはどうすればよいですか?
- 30. モバイルへのユーザコールにアクセスするにはどうすればよいですか?
+1、感謝しても簡単ですが私の問題を解決しました –
レンダリングされた/まだ示されているが、それはいかなるアイテムも持たない。 – Maslow