Wpf 使用AttachedProperty设置自定义ScrollViewer属性值

Wpf 使用AttachedProperty设置自定义ScrollViewer属性值,wpf,xaml,Wpf,Xaml,我用我的自定义ScrollViewer重新部署了TreeView。如果我试图在代码隐藏中设置TreeView的AttachedProperty“ScrollViewer.PanningMode”,那么我的自定义ScrollViewer似乎不会改变(ScrollViewer的PanningMode保持不变) 代码隐藏: _treeView.SetValue(ScrollViewer.PanningModeProperty, PanningMode.None); 编辑 实际上,我是这样解决的: S

我用我的自定义ScrollViewer重新部署了TreeView。如果我试图在代码隐藏中设置TreeView的AttachedProperty“ScrollViewer.PanningMode”,那么我的自定义ScrollViewer似乎不会改变(ScrollViewer的PanningMode保持不变)

代码隐藏:

_treeView.SetValue(ScrollViewer.PanningModeProperty, PanningMode.None);
编辑

实际上,我是这样解决的:

ScrollViewer scrollViewer = _treeView.Template.FindName("ScrollViewer", _treeView) as ScrollViewer;
if (scrollViewer != null)
    scrollViewer.PanningMode = PanningMode.None;

但它不是很漂亮,也不能回答我的问题。

在自定义scrollviewer的ControlTemplate中尝试TemplateBinding PanningMode,如下所示。PanningMode=“{TemplateBinding ScrollViewer.PanningMode}”@VictoryJessie ScrollViewer应该已经支持TemplateBinding到TemplatedParent的附加属性。@IlyaSolovyev在尝试更改之前,平移模式的旧值是多少?也许可以在此处发布更多代码help@devhedgehog旧值是我在设计模式下在xaml中指定的值(例如PanningMode.Both)。