c# winfrom treeview的刷新,总是闪烁,并且无法操作
我的客户端程序里有一个treeview,用于显示服务端的某一些信息。这些信息需要实时更新,所以我在一个timer里写了刷新的方法。但是这样treeview控件上总是有闪烁...
我的客户端程序里有一个treeview,用于显示服务端的某一些信息。这些信息需要实时更新,所以我在一个timer里写了刷新的方法。但是这样treeview控件上总是有闪烁,而且treeview中的项是有右键菜单的,这么一闪一闪的也不好选中一项的右键菜单啊~
各位大侠有没有办法解决这个问题的?
我看到好像有说用mutex的,但是我对这个不熟悉,不知道有没有谁能帮我介绍一下?最好有这方面的例子。
谢谢大家~~ 展开
各位大侠有没有办法解决这个问题的?
我看到好像有说用mutex的,但是我对这个不熟悉,不知道有没有谁能帮我介绍一下?最好有这方面的例子。
谢谢大家~~ 展开
5个回答
展开全部
这个用多线程吧
将处理数据的过程交给子线程来做
将处理数据的过程交给子线程来做
更多追问追答
追问
是啊~~我刚刚也尝试了这个,但是问题是这个刷新的过程中涉及到其他线程。
是这样的,我的刷新需要用到两个控件,控件A在mainfrom中,控件B在某一个子窗口中,我现在是在子窗口中刷新,那么如果用到线程就会报错说:控件A不是在本线程中创建的;同样的如果我在mainfrom中用线程刷新也会有这个问题。请问这个问题要怎么解决呢?
追答
控件A不是在本线程中创建的
这个用Invoke BeginInvoke
详细用法百度一下你就知道
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
那是在执行吧,看看有没有死循环之类
追问
没有死循环,时间间隔为1秒的timer,当然是在执行。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果要使控件刷新不闪烁,就要用到控件重绘了
追问
控件重绘?重绘控件的哪个方法?请问有例子么?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
treeview干嘛要动态更新呢
更多追问追答
追问
没办法啊……需求要求的,treeview里的信息必须要实时跟新,而且必须用treeview,不能用其他控件
追答
treeview一般显示固定的东西,你是要用TREEVIEW显示什么东西呢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不知道。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询