0
我创建了一个不错的工作滚动/缩放/泛用户控件,但现在我意识到ScrollContentPresenter
没有我可以设置的背景颜色。如何为ScrollContentPresenter提供背景色?
也就是说,当我放大了我的画布缩放到一个较小的区域和ScrollViewer
和Canvas
的区域之间保持完全的白色,这是ScrollContentPresenter
。
有没有简单的解决方案?
一些代码来说明这一点:
<ScrollViewer VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto">
<Grid Name="grid" RenderTransformOrigin="0.5,0.5"
Width="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ScrollViewer}}, Path=ActualWidth}"
Height="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ScrollViewer}}, Path=ActualHeight}">
<Grid.LayoutTransform>
<TransformGroup>
<ScaleTransform x:Name="scaleTransform"/>
</TransformGroup>
</Grid.LayoutTransform>
<ListBox ... />
</Grid>
</ScrollViewer>
这段代码的ScrollContentPresenter
缩小时成为白色显示。画布然后以为中心。
没有在代码中ScrollContentPresenter
的Grid
的Width
& Height
binidng缩小时仍然是不可见的。画布然后固定在左上角。
看起来貌似合理,但不是我的代码中的网格,但ScrollViewer的内部网格是恶棍。 – Gerard
好的:'var grid = Tools.FindChildVisualTree(scrollViewer); grid.Background = Brushes.Red;' –
Gerard