我有一个位于canvas
内的自定义scrollviewer
控件 - 我已对canvas
上的项目进行拖放和移动,并覆盖MeasureOverride
以便我在画布上移动一个项目,其大小反映了更改,因此如果我将项目移动到画布的可见部分之外,它将调整大小以适应移动的项目,滚动条将适当显示。
然而,如果我然后使用滚动条将项目带入视图,然后开始将项目再次移出,滚动条会有点乱。
这是对我担心的问题的一个相当糟糕的解释,但我不知道还有什么其他的说法,但希望它会包含足够的信息让某人指出我正确的方向。
答案 0 :(得分:1)
是的,你是对的,需要更多解释问题。虽然我也遇到了Canvas
和scroll-viewer
面临很多问题的情况,但请查看我遇到的问题以及我如何解决这个问题 -
ScrollBars are not visible after changing positions of controls inside a Canvas
我必须使用
base.InvalidateMeasure()
在每次操作之后明确地 刷新画布并制作 滚动条可见。