我试图将ScrollViewer包裹在Canvas(一些信号图表)周围,但我似乎无法让它工作。
首先,我有一个用户控件是一个制作2d线图(来自我正在关注的书),我正在尝试修改它以自定义它以供我自己使用。相关部分是:
我的应用(Window1.xaml)
<Grid Grid.Column="1" Grid.Row="2">
<local:LineChartControlLib x:Name="originalChart" Xmin="0" Xmax="51.2" Ymin="-3" Ymax="3" Background="White" Title="" GridlinePattern="DashDot" />
</Grid>
UserControl:
<Grid Margin="0" x:Name ="chartGrid" Grid.Column="1" Grid.Row="1" ClipToBounds="True" Background="Transparent" SizeChanged="chartGrid_SizeChanged" />
<Canvas Margin="2" Name="textCanvas" ClipToBounds="True" Grid.Column="1" Grid.Row="1">
<Canvas Name="chartCanvas" ClipToBounds="False">
<Canvas Name="legendCanvas" Background="Transparent" />
</Canvas>
</Canvas>
如果我在我的应用程序中的任何画布网格周围放置ScrollViewer,画布不会显示,执行时间非常慢。如果我在用户控件中围绕网格或Canvas放置ScrollViewer,则会重复(无限地)触发“chartGrid_SizeChanged”事件。任何人都可以启发我对我不理解的事情吗?非常感谢。