【发布时间】:2014-03-07 02:01:51
【问题描述】:
我的页面上有以下结构:
默认情况下,ScrollViewer 上有一个 ScrollBar。
var scrollbars = this.ScrollView.GetDescendantsOfType<ScrollBar>().ToList();
_scrollBar = scrollbars.FirstOrDefault(x => x.Orientation == Orientation.Horizontal);
我将 _scrollBar 的值绑定到滑块的值,将最大值绑定到最大值。
var valueBinding = new Binding();
valueBinding.Source = _scrollBar;
valueBinding.Mode = BindingMode.TwoWay;
valueBinding.Path = new PropertyPath("Value");
BindingOperations.SetBinding(this.Slider, Slider.ValueProperty, valueBinding);
var maximumBinding = new Binding();
maximumBinding.Source = _scrollBar;
maximumBinding.Mode = BindingMode.OneWay;
maximumBinding.Path = new PropertyPath("Maximum");
BindingOperations.SetBinding(this.Slider, Slider.MaximumProperty, maximumBinding);
当我打开我的页面时,有一个滑块和默认滚动条。当我滑动/滚动滚动查看器时,滑块和滚动条同步滑动/滚动。现在,当我移动滑块时,滚动条也在移动,但不是 scrollViewer。滚动条滚动事件也不会被触发。当我用鼠标指针移动滚动条时,滑块和滚动查看器也在移动,滚动条滚动事件被触发。
我需要改变什么才能移动滑块和滚动查看器同步移动?
非常感谢
【问题讨论】:
标签: c# windows-runtime scrollviewer