我想在列表视图上保留一个总是最顶层的画布。画布应该在窗口上拉伸,如果用户试图滚动列表视图,列表视图必须滚动,但是画布必须是最上面透明的,并且用户可以看到listview。我的XAML树如下所示:
<Grid>
<ScrollViewer>
<ListView>
</ListView>
</ScrollViewer>
<Canvas Name="DxPanel"></Canvas>
</Grid>我正试着做一个记录应用程序。诸如此类的要求:
我知道这是个艰难的挑战。我计划保存笔划,文本数据在db和图像数据在磁盘。
发布于 2016-09-09 07:16:11
首先,我需要说的是,没有必要将ListView放在ScrollViewer中,默认情况下,如果有很多项,可以滚动ListView,这是因为ListView模板中有一个ScrollViewer,您可以引用默认的ListView样式和模板。
然后,如果您的Canvas一直覆盖ListView,您的ListView就无法集中精力,更不用说让ListView滚动了。所以我建议你重新考虑一下,为什么你的Canvas应该是最透明的?
如果希望可以滚动/聚焦ListView,同时可以看到Canvas中的布局,则可以将ListView置于Canvas之上,默认情况下ListView的背景是透明的。
您可以留下一个注释来告诉我们您的Canvas中有什么,为什么要扩展这个Canvas并将其放在ListView的顶部,也许我们可以尝试找到其他方法来解决您的问题。
https://stackoverflow.com/questions/39400737
复制相似问题