DevExpress之SplashScreen用法实例

 更新时间:2014年08月20日 09:09:25   投稿:shichen2014  
这篇文章主要介绍了DevExpress中SplashScreen的用法,对于C#初学者有很好的参考借鉴价值,需要的朋友可以参考下

本文实例展示了DevExpress中SplashScreen的用法,对于C#初学者来说有一定的参考借鉴价值,具体用法如下:

关键代码部分如下:

using DevExpress.XtraSplashScreen;
using System;
namespace DevExpressUtilHelpV3
{
  /// <summary>
  /// 基于.NET 3.0的 SplashScreen工具类
  /// </summary>
  public static class SplashScreenToolV3
  {
    private const bool FadeIn = false;
    private const bool FadeOut = true;
    private const bool ThrowExceptionIfIsAlreadyShown = false;
    private const bool ThrowExceptionIfIsAlreadyClosed = false;

    /// <summary>
    /// ShowSplashScreen
    /// </summary>
    /// <param name="type">WaitForm</param>
    public static void ShowSplashScreen(Type type)
    {
      CloseSplashScreen();
      SplashScreenManager.ShowForm(null, type, FadeIn, FadeOut, ThrowExceptionIfIsAlreadyShown);
    }
    /// <summary>
    /// CloseSplashScreen
    /// </summary>
    public static void CloseSplashScreen()
    {
      if (SplashScreenManager.Default != null)
      {
        //Thread _task = new Thread(() =>
        //{
        SplashScreenManager.CloseForm(ThrowExceptionIfIsAlreadyClosed);
        //});
        //_task.Start();
      }
    }
    /// <summary>
    /// SetCaption
    /// </summary>
    /// <param name="caption">需要设置的Title</param>
    public static void SetCaption(string caption)
    {
      if (SplashScreenManager.Default != null && !string.IsNullOrEmpty(caption))
      {
        SplashScreenManager.Default.SetWaitFormCaption(caption);
      }
    }
    /// <summary>
    /// SetDescription
    /// </summary>
    /// <param name="description">需要设置的文字提示信息</param>
    public static void SetDescription(string description)
    {
      if (SplashScreenManager.Default != null && !string.IsNullOrEmpty(description))
      {
        SplashScreenManager.Default.SetWaitFormDescription(description);
      }
    }
  }
}

测试代码如下:

try
{
 SplashScreenToolV3.ShowSplashScreen(typeof(WaitForm1));
 Thread.Sleep(5000);
 throw new Exception("ccccccccc");
 ////Thread.Sleep(5000);
 //SplashScreenToolV3.SetCaption("正在开始下载....");
 ////SplashScreenController.ShowSplashScreen();
 //Thread _task1 = new Thread(() =>
 //{
 //  for (int i = 0; i < 100; i++)
 //  {
 //    SplashScreenToolV3.SetDescription(i.ToString() + "%");
 //    Thread.Sleep(1000);
 //  }
 //});
 //Thread _task2 = new Thread(() =>
 //{
 //  for (int i = 0; i < 100; i++)
 //  {
 //    SplashScreenToolV3.SetCaption("测试.." + i);
 //    Thread.Sleep(500);
 //  }
 //});
 //_task1.Start();
 //_task2.Start();
}
catch (Exception ex)
{
 MessageBox.Show(ex.Message);
}
finally
{
 // SplashScreenController.HideSplashScreen();
}

测试效果如下图所示:

希望本文所述方法对打击的C#程序设计能有所帮助!

相关文章

  • C#中常使用进度条的代码

    C#中常使用进度条的代码

    C#中常使用进度条的代码...
    2007-03-03
  • C# yield关键字详解

    C# yield关键字详解

    这篇文章主要介绍了C# yield关键字详解,本文讲解了yield是一个语法糖、语法糖的实现(实现IEnumerable<T>接口的类)、yield使用中的特殊情况等内容,需要的朋友可以参考下
    2015-04-04
  • C#中Predicate<T>与Func<T, bool>泛型委托的用法实例

    C#中Predicate<T>与Func<T, bool>泛型委托的用法实例

    这篇文章主要介绍了C#中Predicate<T>与Func<T, bool>泛型委托的用法,指出了其用法中的误区及易错点,有助于更好的理解泛型委托的用法,需要的朋友可以参考下
    2014-09-09
  • C#高效比较两个DataTable数据差异化的方法实现

    C#高效比较两个DataTable数据差异化的方法实现

    本文主要介绍了C#高效比较两个DataTable数据差异化的方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • 深入学习C#网络编程之HTTP应用编程(上)

    深入学习C#网络编程之HTTP应用编程(上)

    这篇文章主要介绍了如何学习C#网络编程之HTTP应用编程的相关知识,文中讲解的非常细致,代码帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-06-06
  • 浅析C#线程本地存储中为什么线程间值不一样

    浅析C#线程本地存储中为什么线程间值不一样

    这篇文章主要想来和大家一起讨论一下C#线程本地存储中为什么线程间值不一样,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-01-01
  • C#中的ComboBox控件详细使用方法

    C#中的ComboBox控件详细使用方法

    这篇文章主要给大家介绍了关于C#中ComboBox控件详细使用的相关资料,ComboBox控件是一个很容易使用出错的控件,在此将常用的操作写下来,以备后用,需要的朋友可以参考下
    2023-09-09
  • 通过C#程序操作Config文件

    通过C#程序操作Config文件

    这篇文章介绍了通过C#程序操作Config文件的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-02-02
  • C#结合数据库实现验证识别ID卡内容的方法

    C#结合数据库实现验证识别ID卡内容的方法

    这篇文章主要介绍了C#结合数据库实现验证识别ID卡内容的方法,非常实用的功能,需要的朋友可以参考下
    2014-07-07
  • 一文带你了解 C# DLR 的世界(DLR 探秘)

    一文带你了解 C# DLR 的世界(DLR 探秘)

    DLR 是 C#4.0 新引进来的概念,其主要目的就是为了动态绑定与交互。下面小编给大家带来一篇不错教程,一文带你了解 C# DLR 的世界,需要的朋友可以参考下
    2020-02-02

最新评论