ツリービューの仮想化ジャンプ

いるItemContainerGenerator使用して対応するデータを取得するために.ContainerFromItemのUIElement方法。

しかし、あなたがそうするUIElementを取得するために目に見える領域を越えて、仮想化技術を使用している場合。

Microsoftのマニュアルを参照してください:ツリービューツリービューアイテムを見つける方法を、」不要と時代遅れのコードを削除し、完全な例を記述します。

コードの唯一の五つの主要なライン

1                  itemsControl.ApplyTemplate()。
2                  VAR itemsPresenter = FindVisualChild <ItemsPresenter> (ItemsControlに)。
3                  itemsPresenter.ApplyTemplate()。
4                  VARの virtualizingStackPanel =(VirtualizingStackPanel)VisualTreeHelper.GetChild(itemsPresenter、0 );
5                  virtualizingStackPanel.BringIndexIntoViewPublic(data.index)。

このような処理によって、それはのUIElementに撮影することができます。

                ItemsControl =(ItemsControlに)itemsControl.ItemContainerGenerator.ContainerFromItem(VM)。

デモ走行レンダリング

私の中の完全な例のGithub

おすすめ

転載: www.cnblogs.com/noctwolf/p/11123038.html