[英]C# WPF Set ScrollViewer vertical offset at item position
[英]How to get offset of an item relative to Scrollviewer in WPF?
我有包含多個項目的ListBox,我想獲得一個項目相對於Scrollviewer的偏移量。 我嘗試使用TranslatePoint或TransformToAncestor方法做到這一點,但它僅適用於已經可見的項目。 那么,如何獲得列表末尾不可見的項的偏移量呢?
我認為這是不可能的,因為您使用的是VirtualizingStackPanel的默認ItemsPanel。 看不見的項目沒有附加到可視化樹上,它們從未被度量和布置,因此它們沒有位置。
如果不需要虛擬化,則應將ItemsPanel更改為StackPanel。 該面板將所有項目附加到可視樹,並且TranslatePoint / TransfromToAncestor將正常工作。
<ListBox>
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel/>
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
...
</ListBox>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.