我有一個選項卡控件,有一整套可關閉的選項卡項目,每個選項卡項目都有一個具有可滾動部分的視圖(每個視圖都是相同的不同實例) ,那我遇到的問題是,如果你滾動一個標籤在其級聯到所有其他選項卡,我是遊蕩,如果有人能告訴我怎樣才能阻止這種情況發生?
感謝所有:)
WPF中的滾動條Tab項目問題
1
A
回答
2
這是默認的行爲,如果你TabControl
指定ContentTemplate
.TabControls使用虛擬化技術,所以當你切換標籤頁,而不是創建一個新的,每次他們將重新使用的模板。
這意味着同一ScrollViewer
被不管你是其上標籤使用。您可以通過添加一個Loaded
事件您ScrollViewer
證明這一點,你會看到它只被調用一次。解決此
一種方法是使用具有x:Shared="False"
一個DataTemplate,所以它不會分享的模板。我還沒有測試過,看看是否有任何性能問題。
<DataTemplate x:Key="TestTemplate" x:Shared="False">
<local:UserControl1 />
</DataTemplate>
<Style x:Key="TabItemStyle" TargetType="{x:Type TabItem}">
<Setter Property="Header" Value="Test" />
<Setter Property="ContentTemplate" Value="{StaticResource TestTemplate}" />
</Style>
...
<TabControl ItemsSource="{Binding SomeCollection}"
ItemContainerStyle="{StaticResource TabItemStyle}" />
需要注意的是,這似乎是很挑剔......比如我需要把在UserControl
我ScrollViewer
或將無法正常工作。我還需要設置TabItem.ContentTemplate
,而不是TabControl.ContentTemplate
。
相關問題
- 1. C#WPF Tab項目Click事件問題
- 2. WPF - 列表視圖滾動條問題
- 3. WPF Canvas標尺滾動條問題
- 4. WPF _ TextBlock垂直滾動條問題
- 5. 滾動條問題
- 6. 滾動條問題
- 7. 滾動條問題
- 8. 滾動條問題
- 9. 滾動條問題
- 10. 滾動條問題
- 11. WPF datagrid滾動問題
- 12. 滾動條的MB問題
- 13. 滾動條的TForm問題
- 14. mcustom滾動條自動滾動問題
- 15. Tab項目保持選中WPF
- 16. android:getView()問題 - 滾動時更改項目
- 17. 項目渲染器中的滾動條
- 18. WPF RibbonControlsLibrary RibbonSplitButton項目問題
- 19. 滾動條問題與iframe
- 20. 水平滾動條問題
- 21. ListView滾動條問題
- 22. Python Tkinter滾動條問題
- 23. 滾動條問題X2
- 24. 水平滾動條問題
- 25. jScrollPane滾動條問題
- 26. Flexbox滾動條問題
- 27. 水平滾動條問題
- 28. Html滾動條問題
- 29. 垂直滾動條問題
- 30. TBODY滾動條問題
什麼滾動文本框?可滾動的標籤頁中的控件是什麼? – 2012-02-09 03:53:55