WPF多线程 后台加载 前台一个Loading动画 怎么才能不让动画加载的时候卡

小慧哥 2010-11-15 04:54:05
我做一个加载功能 一个动画Loading效果 在后台用线成加载窗体 但是加载的时候 前台动画就卡住了 不动了 加载完 才动 来一个大神HELP 一下 就类似 开机动画效果 程序什么时候加载完 动画什么时候消失! 不要假的!!!
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Interop;
using SYST_Products;
using System.Threading;
using System.Windows.Forms;
using System.Windows.Threading;
namespace WpfApplication6
{
/// <summary>
/// Window1.xaml 的交互逻辑
/// </summary>
public partial class Window1 : Window
{


public Window1()
{
InitializeComponent();

}

public delegate void AddButtonDelegate(Object uiobject);



private void Window1_Loaded(object sender, RoutedEventArgs e)
{

Thread thread = new Thread( AddButton );
thread.IsBackground = true;
thread.Start();

}
这个方法 加载的时候很卡 把动画卡住了
public void DoAddButton(Object uiobject)
{

Introduction gsjj = new Introduction(0, this);

gsjj.Width = SystemParameters.PrimaryScreenWidth;

gsjj.Height = SystemParameters.PrimaryScreenHeight;

this.UserContrlGD.Children.Add(gsjj);
this.zv.Visibility = Visibility.Collapsed;

}

public void AddButton(Object UIObject)
{
this.UserContrlGD.Dispatcher.BeginInvoke(new ParameterizedThreadStart(DoAddButton), DispatcherPriority.ContextIdle, UIObject);

}

前台就一个动画

}
}



...全文
2299 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Bridge Chen 2011-05-12
  • 打赏
  • 举报
回复
DispatcherPriority.ContextIdle 枚举值为 3。 在完成后台操作后处理操作。

你把这个改成DispatcherPriority.Normal试试
小慧哥 2010-11-16
  • 打赏
  • 举报
回复
我刚接触线程 菜鸟 呵呵 麻烦 大神们 讲清楚一些 谢谢拉 思路也可以 就是做个Loading 效果 运行的时候动画播放 等窗体加载完 前台动画消失 动画 和加载 窗体都是一个窗体 谢谢
小慧哥 2010-11-16
  • 打赏
  • 举报
回复
动画是前台写好的 窗体里内容是从后台加载进来的 运行的时候 加载窗体内容 动画卡了 不让用定时器 就想在运行的时候 动画在播放 后台也处理家载窗体 等窗体家载完 动画消失 动画和家载的窗体是一个窗体
passself 2010-11-16
  • 打赏
  • 举报
回复
加载动画的时候卡是因为除了加载之外还在做别的事情,可以在加载的时候调用一个定时器会好些
小慧哥 2010-11-16
  • 打赏
  • 举报
回复
说什么那 做的是WPF 有没有解决办法 求大神啊 给个思路也好
ccitzs 2010-11-15
  • 打赏
  • 举报
回复
用这种方式写silverlight简直是暴殄天物啊 Expression Blend 4谁用谁知道

8,737

社区成员

发帖
与我相关
我的任务
社区描述
WPF/Silverlight相关讨论
社区管理员
  • WPF/Silverlight社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧