C# winform一个panel中要求只能放12个LABEL控件,多的要求翻页。有什么好的方法么?

我现在做的就是将数据库中有多少条记录就生成多少个label控件。用一个timer控件来控制翻页。当条数大于12时就将panel控件中的label情况就是panel.cle... 我现在做的就是将数据库中有多少条记录就生成多少个label控件。用一个timer控件来控制翻页。当条数大于12时就将panel控件中的label情况就是panel.clear()在将数据库从12到24显示出来。我用的倍数关系控制翻页,但是客户现在不想屏幕闪烁,因为每次panel.clear()后重新在生成label控件时屏幕会闪烁。如果客户要求1秒就翻页,那么闪烁就非常明显。客户不喜欢。要求做到不太明显,甚至不闪烁最好。请问有什么好的方法么?麻烦各位大侠给我个好的方法,最好有代码。十分感谢! 展开
 我来答
ghotos
2013-12-09 · TA获得超过280个赞
知道小有建树答主
回答量:435
采纳率:0%
帮助的人:363万
展开全部
不行就别clear啊,直接将label放数组,然后翻页以后只是把信息修改掉,多于的移除掉,这样应该会好很多。
追问
label自动生成的。不是想label1,label2.。这样,而是label lab =new label()在for循环出来有多少个。如果多的怎么移除!如果知道是labe1这样的我就可以移除最后几个label5或者label6.。。现在是一个LAB自动生成,一移除就全移除了。。怎么办呢
追答
以12个label为例,你把12 个label都放到数组中,假设有5条数据,你可以for循环为label[0]到label[4]修改数据,然后,panel.Controls.remove(label[5])到panel.Controls.remove(label[11])
当然,要注意逻辑控制,下次再往前翻的时候要考虑移除的label要再添加
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Hope_李
2013-12-09 · TA获得超过141个赞
知道小有建树答主
回答量:329
采纳率:33%
帮助的人:201万
展开全部
之间放好laberl控件,翻页的时候不要清除,而是修改label就不会闪烁了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
891773443
2013-12-09 · 超过30用户采纳过TA的回答
知道答主
回答量:123
采纳率:0%
帮助的人:57.5万
展开全部
你可以不用重新生成控件 啊 如果要继续采用你的办法 那每一页都放到group里 然后再通过visible()方法显示 有点不太清楚你的需求 请问你是要求自动刷新吗 数据库有多少字段呢 为何不用gridview呢
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式