我加入在我的TreeView一個ScrollViewer中有2個原因:爲什麼滾動查看器中鼠標滾輪滾動?
我想要更多控制權的方式我TreeView的滾動條看起來
我想在我的TreeView的滾動條的位置更多的控制,因爲我想同步幾個樹視圖。
似乎只要我在TreeView周圍添加一個ScrollView,我就失去了使用鼠標滾輪來滾動它的能力。
我想我的問題是2部分。我是否通過添加我自己的ScrollView來獲得任何收益,並且是否通過設計實現了這種行爲?
我加入在我的TreeView一個ScrollViewer中有2個原因:爲什麼滾動查看器中鼠標滾輪滾動?
我想要更多控制權的方式我TreeView的滾動條看起來
我想在我的TreeView的滾動條的位置更多的控制,因爲我想同步幾個樹視圖。
似乎只要我在TreeView周圍添加一個ScrollView,我就失去了使用鼠標滾輪來滾動它的能力。
我想我的問題是2部分。我是否通過添加我自己的ScrollView來獲得任何收益,並且是否通過設計實現了這種行爲?
我不認爲您的任何要求都不能使用TreeView
模板中的ScrollViewer
。您可能需要重新模板TreeView
才能實現您的目標。
這也說明了爲什麼您的滾動無法按預期工作。你已經有效地獲得了ScrollViewer
約ScrollViewer
。什麼,你需要爲工作做的是無論是從樹視圖模板中刪除ScrollViewer中,或將其禁用:
<TreeView ScrollViewer.VerticalScrollBarVisibility="Disabled" ...>
這就是說,我認爲你的情況是更好的選擇可能會重新模板/重新設計TreeView
本身。
可以retemplate您的TreeView去除內的ScrollViewer
<ScrollViewer Height="200" Width="200">
<TreeView>
<TreeView.Resources>
<Style TargetType="{x:Type TreeView}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="TreeView">
<Border Name="Border"
BorderBrush="{TemplateBinding BorderBrush}"
Background="{TemplateBinding Background}"
CornerRadius="1"
BorderThickness="1">
<ItemsPresenter />
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</TreeView.Resources>
<TreeViewItem IsExpanded="True">Test001</TreeViewItem>
<TreeViewItem IsExpanded="True">Test002</TreeViewItem>
<TreeViewItem IsExpanded="True">Test003</TreeViewItem>
<TreeViewItem IsExpanded="True">Test004</TreeViewItem>
<TreeViewItem IsExpanded="True">Test005</TreeViewItem>
<TreeViewItem IsExpanded="True">Test006</TreeViewItem>
<TreeViewItem IsExpanded="True">Test007</TreeViewItem>
<TreeViewItem IsExpanded="True">Test008</TreeViewItem>
<TreeViewItem IsExpanded="True">Test009</TreeViewItem>
</TreeView>
</ScrollViewer>
好點。我曾嘗試禁用垂直ScrollViewer中的知名度,但沒有被不那麼遠工作。但是,我同意其他觀點。 –