您的位置:首页 > 运维架构

WPF:popup实现下拉列表的问题

2012-11-28 14:55 549 查看
  最近在做项目的时候由于需要用到下拉列表,于是就用popup实现了(http://blog.csdn.net/yysyangyangyangshan/article/details/8177878),在调试中也没有发现什么问题。不过当给用户使用时就出现了问题,选中选项后有残影,影响了界面显示。

解决问题时,一直认为是界面重绘,刷新的问题。于是还在网上找了段代码据说用于刷新的,调用DoEvents()。

[csharp]
view plaincopyprint?

public void DoEvents()  
{  
    DispatcherFrame frame = new DispatcherFrame();  
    Dispatcher.CurrentDispatcher.BeginInvoke(DispatcherPriority.Background,  
        new DispatcherOperationCallback(ExitFrames), frame);  
    Dispatcher.PushFrame(frame);  
}  
  
public object ExitFrames(object f)  
{  
    ((DispatcherFrame)f).Continue = false;  
  
    return null;  
}  

public void DoEvents()
{
DispatcherFrame frame = new DispatcherFrame();
Dispatcher.CurrentDispatcher.BeginInvoke(DispatcherPriority.Background,
new DispatcherOperationCallback(ExitFrames), frame);
Dispatcher.PushFrame(frame);
}

public object ExitFrames(object f)
{
((DispatcherFrame)f).Continue = false;

return null;
}

不过依然是不行的。

试了很多办法,最后还是从popup的属性中找到了一个解决办法。设置一个属性就可以了。如下:

<Popup  AllowsTransparency="True">... ...</Popup>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: