在我的表格上,我有一个顶部面板,一个底部面板和一个TableLayoutPanel,它们显示主要信息。当用户单击此TableLayoutPanel中的一行时,该项目被视为已查看,下一项应向前滑动一个位置(第1行变为第2行,第2行变为第3行,第3行获取新数据)。我希望此幻灯片操作让用户可视化更改。
答案 0 :(得分:0)
你必须自己实施所需的绘画。
您可以覆盖OnPaint
并让原始OnPaint
处理所有绘画,除非您的滑动应该发生...
当您的滑动发生时,您可以选择表格中不存在的第二个TableLayoutPanel
,其中包含所有4行(旧的3行+新行)并将其绘制到位图图像上({ {1}})
现在你有一个比你的滑动Control.DrawToBitmap()
更大的位图...现在采用该位图并使用它所需的部分来获得你的滑动动画...而不是调用原始的{{1} },你可以从位图中获取所需的区域......你当然必须首先计算所需的区域,这取决于你想要的滑动动画速度,启动和停止,或者你想到的任何东西......