显示加载窗口

2023-12-26

我在 WPF 中的应用程序加载外部资源,因此我想在程序加载时显示加载表单。

我尝试创建表单,并在加载代码之前显示,并在加载结束时关闭。

private void Window_Loaded(object sender, RoutedEventArgs e)
{
     LoadForm lf = new LoadForm();
     lf.Visibility = Visibility.Visible;

     // Al code that delays application loading

     lf.Close();
}

但我得到的唯一结果是,当加载进度完成并立即关闭时,会显示表单。

我认为我需要使用 System.Threading 但不确定。

Thanks.

Note我在 Window_Loaded() 方法中加载所有应用程序外部资源,而不是在主类方法中。


您应该查看这篇关于创建启动画面 http://msdn.microsoft.com/en-us/library/cc656886.aspx在 WPF 中。本质上,您将要显示的图像添加到项目中,并将构建操作设置为 SplashScreen,它将在程序启动时显示,并在显示主应用程序窗口时消失。


您也可以尝试导入System.ComponentModel类别及用途后台工作者 http://msdn.microsoft.com/en-us/library/system.componentmodel.backgroundworker.aspx显示您的加载表单,它将允许您保留 UI 的响应能力。

public partial class MainWindow : Window
{
    Window1 splash;
    BackgroundWorker bg;
    public MainWindow()
    {

        InitializeComponent();

        bg = new BackgroundWorker();
        bg.DoWork += new DoWorkEventHandler(bg_DoWork);
        bg.RunWorkerCompleted += new RunWorkerCompletedEventHandler(bg_RunWorkerCompleted);

    }

    void bg_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
    {
        splash.Hide();
    }

    void bg_DoWork(object sender, DoWorkEventArgs e)
    {
        System.Threading.Thread.Sleep(10000);
    }


    private void Window_Loaded(object sender, RoutedEventArgs e)
    {
        splash = new Window1();
        splash.Show();
        bg.RunWorkerAsync();
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

显示加载窗口 的相关文章

  • VS 2012 中缺少实体数据模型

    添加新项目时 我在 数据 选项卡下找不到实体数据模型 我查看了几个问题和答案以及有关此问题的信息 但没有一个解决方案有效 我已修复 卸载并重新安装 手动安装 EF Tools 包并尝试卸载所有 VS 相关程序 我还尝试在不同的 NET 框架
  • 字节序和大小为 1 的位域

    我认为字节顺序不应该影响大小最多为 1 个字节的结构 但这是我的小端机器上的代码 include
  • 多次客户端打印后,Arduino (Uno) 以太网客户端连接失败

    我正在使用带有以太网扩展板的 Arduino Uno 发送多次 HTTP 请求后 客户端 println 客户端连接时开始失败 故障时间似乎是随机的 并且循环中的序列读数可能在 1000 和 7000 之间变化 该错误与以太网发送缓冲区溢出
  • 使用 .Net HttpListener 进行多线程

    我有一个听众 listener new HttpListener listener Prefixes Add http 8077 listener Start listenerThread new Thread HandleRequests
  • 模板:模板函数与类模板成员函数不能很好地配合[重复]

    这个问题在这里已经有答案了 这是我实际拥有的一些代码的最小测试用例 当它尝试评估时失败a getResult b test cpp In function void printStuff const A test cpp 6 error e
  • C# 中的序列化和对象版本控制

    如果我想序列化一个对象 我必须使用 Serializable 属性和所有成员变量将被写入该文件 我不知道如何进行版本控制 例如如果我添加一个新的成员变量 重命名变量或仅删除变量 然后打开 反序列化 文件 如何确定对象 文件版本 以便我可以正
  • 如何在 RestSharp 中使用 PUT?

    我想使用 PUT 但我只能找到如何使用 POST 的示例 我要发送的json数据是使用这个cURL命令发送的curl i H Content Type application json X PUT d status 1 http 192 1
  • 拖动用户控件,但将其保留在 WPF 中其父级的边界内

    我有一个用户控件 正在将其拖动到网格内 Z Index 设置得相当高 这样我就可以将其保持在其他孩子之上 拖动控件效果很好 但如果用户想要将控件移到网格之外 它会允许这样做 How do I keep it from leaving the
  • 如何在configure.in中测试C++库的可用性?

    我正在 GNU Linux 上开发一个 C 项目 并且正在寻找一种方法来使用 Autotools 测试 IBM Informix 库的存在性和可用性 即编辑configure in 我没有使用 Autotools 的经验 所以基本上我是从该
  • 如何doxygen注释Qt属性?

    我想将 Doxygen 注释附加到我的 Q PROPERTY 例如 song h class Song public QObject Q OBJECT private Q PROPERTY QString title READ title
  • C - 具有可变数量参数和命令行参数的函数

    我需要排序n按字典顺序排列的作为参数数量可变的函数的参数的字符串数量 在main函数中 字符串被读取为命令行参数 这是我的代码 include
  • 什么更快?

    如果我们有以下 2 个 C 代码片段可以完成相同的任务 int a b somenumber while b gt 0 a b 3 b 3 or int b somenumber while b gt 0 int a b 3 b 3 我对计
  • 关于使用 Botframework v4 更改为新 LUIS 密钥的问题

    我在 Azure 中下载了 C 模板 它会自动创建并设置 LUIS 应用程序 但现在 LUIS 达到 1000 次调用并且现已过期 我使用创建了一个新密钥本指南 https learn microsoft com en us azure c
  • 使用 Lambda 表达式从字段名称中选择不同的字段

    我需要从数据库表中获取两个字段 使用 linq to sql 检索 一个字段是日期时间 并且是固定字段 另一个字段始终是十进制 但该字段可以不同 该表保存的货币数据每天以不同的货币处理两次 因此可能具有 AM USD PM USD AM E
  • 在 C# 中创建我的对称密钥

    一直在审查一些对称加密方法 我看到了很多在类中硬编码私有静态变量的示例 通常类似于 string key THISISYOURENCRYPTIONKEY 然后在更远的地方 代码使用它来加密 解密 抛开正确的实现 算法 策略以及存储它的位置
  • 从用户控件访问父控件 - C#

    如何访问C winform 中用户控件的父控件 我使用以下代码 但它并不适用于所有类型的控件 例如 ListBox Control Co this TopLevelControl Controls Find label7 true Co 0
  • 将 CollectionBase 转换为 List 或可用于 Linq 的数据类型

    我正在使用 Aspose 单元格来操作 Excel 电子表格 API 中的类型之一是电子表格中的图片集合 它派生自 CollectionBase 请参阅此链接 http www aspose com documentation net co
  • static_assert 有什么作用,你会用它做什么?

    你能举个例子吗static assert C 11 会优雅地解决手头的问题吗 我熟悉运行时assert 我应该选择什么时候static assert 超过常规assert 另外 在boost有一种东西叫做BOOST STATIC ASSER
  • C# 以非管理员权限运行进程

    我启动了一个有关管理员权限的流程 psi Verb runas process StartInfo psi process Start 但现在这个过程必须启动另一个应用程序 但需要非管理员权限 应用程序适用于非管理员权限 我怎样才能做到这一
  • 为什么编译器将“char”匹配“int”而不是“short”?

    我有一个小程序 include

随机推荐

  • 根据第一列中的数字分割矩阵

    我有一个具有以下形式的矩阵 M 1 4 56 1 1 3 5 1 1 3 6 4 2 3 5 0 2 0 0 0 3 1 2 3 3 3 3 3 我想根据第一列中给出的数字分割这个矩阵 所以我想将矩阵拆分为 A 1 4 56 1 1 3 5
  • 如何取消 git bare 存储库中的最后一次提交?

    考虑到有几个 git 命令在裸存储库中没有任何意义 因为裸存储库不使用索引并且没有工作目录 git reset hard HEAD 不是取消提交此类存储库中最后更改的解决方案 通过互联网搜索 我能找到与该主题相关的所有内容this http
  • 通过 ADB 创建 AVD 配置文件

    有什么方法可以获取或查看所有设备的 Android 调试桥 Shell 中的属性 正如我所见 adb shell 仅显示和检索已连接的设备的当前会话的当前进程 我只是想知道有一个 adb shell 脚本命令可以查看该设备的所有技术产品信息
  • MSSQL Server Management Studio (SSMS) 2005 新查询模板

    如何更改 SSMS 2005 中的默认 新查询 模板 发布这个问题作为参考 我做了一些谷歌搜索 发现了一个简单的方法 http weblogs asp net cabhilash archive 2008 11 23 sql server
  • 双向绑定无法解析 setter

    我正在尝试了解数据绑定我有我的信用卡 ViewModel 类 它在我的片段中绑定 如下所示 public class CreditCardValidatorFragment extends Fragment private CreditCa
  • 如何自动获取本地时区的时区偏移量? [复制]

    这个问题在这里已经有答案了 我正在尝试自动获取本地时区偏移量 但遇到了麻烦 我试过了 print time timezone 3600 这会得到 当前错误的 偏移量 因为它不会自动调整夏令时和非夏令时 我也尝试过 now utc pytz
  • 将多个 pandas 数据框写入 Excel

    我正在尝试写多个pandasdataframes我从一个更大的数据集中提取到 Excel 工作簿的多个工作表中 问题是它只写入第一个数据帧 即index 0 因此生成的工作簿只有一个工作表 请参阅sheet1以下 我缺少什么 这是我的问题的
  • 一起滚动的水平列表视图列表 Flutter

    我想创建水平列表视图的垂直列表 我已经使用它实现了this https stackoverflow com questions 51089041 list of horizontal list in flutter 但我的问题是每个项目都单
  • 如何使用swift获取磁力计数据?

    我正在尝试使用 CoreMotion 从我的 iphone 6 获取磁场数据 我使用以下代码访问原始数据没有任何问题 if available motionMangager magnetometerUpdateInterval update
  • 如何在 pycharm 软件包安装中添加 --trusted-host ?

    我在 Windows 7 计算机上安装了 Pycharm 社区版 2016 1 4 并尝试更新我打算从事的项目使用的一些软件包 更新失败 因为本地存储库 不是受信任的主机或不安全的主机 根据pip 因此要在命令行中更新包 我需要运行 pip
  • “原子”更新整个数组

    我有一个编写器线程和一个读取器线程来更新和处理数组池 存储在地图中的引用 写入与读取的比率几乎为 5 1 写入的延迟是一个问题 编写器线程需要根据某些事件更新池中数组的几个元素 整个写入操作 所有元素 需要是原子的 我想确保如果编写器线程正
  • Unity,如何将精灵设置在背景图像前面?

    我制作了背景图像并运行动画 问题是动画层位于背景图像后面 怎么排序呢 信息 见截图 背景图像 z 0 图片上的绿色 GUITexture 爆炸 z 5 图片上的黄色 精灵渲染器 相机 z 10 我尝试过反转数字 但仍然一样 我还尝试在背景图
  • 包裹

    我有来自数据库的项目列表 ul li Jon Skeet li li Darin Dimitrov li li Marc Gravell li li BalusC li li Hans Passant li li SLaks li li V
  • 抓取:http://en.wikipedia.org 的 SSL: CERTIFICATE_VERIFY_FAILED 错误

    我正在练习 Web Scraping with Python 中的代码 但我一直遇到此证书问题 from urllib request import urlopen from bs4 import BeautifulSoup import
  • 无法在Python中使用Selenium访问下拉选择

    我是在 Python 中使用 Selenium 的新手 我正在尝试访问 Barclays Live 网站上的索引数据 登录并加载页面后 我尝试从页面的下拉列表中选择 Custom1 与列表关联的 HTML 代码中的选择对象如下所示
  • 检查软盘驱动器

    获取我使用过的可移动驱动器获取驱动器类型 功能 是否可以检查驱动器是否是软盘驱动器 请让我知道您对此的建议 感谢您的任何帮助 在内部 Microsoft Windows 为每个设备保存命名的特征标志 在 wdm h 中定义 如果该盘符对应的
  • Android VR工具包-HeadTransform getHeadView矩阵表示

    我从适用于谷歌纸板的 Android VR Toolkit 开始 我使用谷歌网站上的示例 https developers google com cardboard get started https developers google c
  • 音频标签持续时间属性返回“无穷大”

    它可能是重复的 但我有一个非常奇怪的场景 用例是在播放音频之前动态显示源集的音频持续时间 这是我到目前为止所尝试过的 var tempVid document 0 createElement audio tempVid preload me
  • CollapsingToolbarLayout:类似于 Facebook 的自定义 contentScrim

    我想为我的产品创建一个自定义 contentScrimcollapsingToolbarLayout 我的 collapsingToolbarLayout 有一个imageview里面 当它滚动时 理论上图像视图应该淡出 而我的稀松布颜色应
  • 显示加载窗口

    我在 WPF 中的应用程序加载外部资源 因此我想在程序加载时显示加载表单 我尝试创建表单 并在加载代码之前显示 并在加载结束时关闭 private void Window Loaded object sender RoutedEventAr