WPF的问题 一个内容控件,打开界面的时候,我想先让界面显示出来,再加载数据,有啥办法没?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WPF的问题 一个内容控件,打开界面的时候,我想先让界面显示出来,再加载数据,有啥办法没?相关的知识,希望对你有一定的参考价值。
排除在构造函数和loaded事件中加载数据,效果不好,给用户的感觉是很卡.
创建一个定时器,1秒或者一定时间后开始加载数据。需要读取数据的时候界面还不卡,考虑使用BackgroundWorker,在BackgroundWorker里直接用Wait Delay之类的也可以,不会导致UI失去响应。 参考技术A 绑定数据源,然后异步的去更新数据源在网格中自动排列 wpf 控件
【中文标题】在网格中自动排列 wpf 控件【英文标题】:Auto-arrange wpf controls in grid 【发布时间】:2015-03-24 14:02:44 【问题描述】:我有一个基于 wpf (mvvm-light) 的表单,带有网格和六个按钮,两列中连续三个。由于按钮可以在设置中打开/关闭,我想隐藏其中的一些,但我不想有空白。我怎样才能做到这一点?
【问题讨论】:
如果您有动态内容,请不要使用固定网格。使用 ListBox 或 WrapPanel。 您对基于某些逻辑动态添加按钮感兴趣吗? 这可能是一种选择。 【参考方案1】:使用 WrapPanel 并将隐藏按钮的可见性设置为 Visibility.Collapsed
(不是 Visibility.Hidden
,它隐藏了控件,但仍保留了空间)。例如,您可以将可见性绑定到设置值。
请看这里:Difference between Visibility.Collapsed and Visibility.Hidden
【讨论】:
以上是关于WPF的问题 一个内容控件,打开界面的时候,我想先让界面显示出来,再加载数据,有啥办法没?的主要内容,如果未能解决你的问题,请参考以下文章
做WPF页面的时候我想通过C#代码触发自定义控件中的事件怎么做
wpf中我想在WebBrowser控件上放置一个Border控件