wpf 多线程操作实例
来源:互联网 发布:淘宝一分钱试用在哪里 编辑:程序博客网 时间:2024/05/21 11:07
由于wpf中有主线程和后台线程的区分所以不能直接使用线程进行主线程的操作
之前是使用func来进行线程操作的,因为func自带这对主线程操作的方法,所以直接写会方便很多
后来,要用到多线程的时候在使用func方法就会显得有些麻烦,还是使用c#最经典的thread最好
private Thread _thread; public MainWindow() { InitializeComponent(); Loaded+=MainWindow_Loaded; } private void MainWindow_Loaded(object sender, RoutedEventArgs e) { _thread=new Thread(Show); _thread.Start(); } protected new void Show() { GridTest.Dispatcher.Invoke(new Action(() => { // this.GridTest.Children.Add(new uc) GridTest.Visibility = Visibility.Visible; // 进入主界面操作UI线程 })); Thread.Sleep(10000);// 模拟操作 GridTest.Dispatcher.Invoke(new Action(() => { // 主ui线程操作 GridTest.Visibility = Visibility.Collapsed; })); }
使用这种方法可以直接使用传统的c#线程操作,
GridTest.Dispatcher.Invoke(new Action(() => { // 主ui线程操作 // }));
只需要使用上面的方法就可以直接对ui线程进行操作。
gridTest是对wpf中XAML的grid的命名
<Grid> <Grid Name="GridTest" HorizontalAlignment="Left" Height="172" Margin="132,70,0,0" VerticalAlignment="Top" Width="287" Background="#FF00F3FF" Visibility="Collapsed"/> <Button Content="Button" HorizontalAlignment="Left" Margin="196,247,0,0" VerticalAlignment="Top" Width="100" Height="48"/> </Grid>
同理,多线程只需要用传统的c#线程在搭配上部分的主线程ui操作就行了
0 0
- wpf 多线程操作实例
- WPF多线程简单实例
- 多线程操作简单实例
- 多线程原子性操作实例
- WPF 多线程
- wpf 多线程。
- WPF多线程
- WPF多线程
- WPF多线程
- wpf 多线程
- WPF实例
- WPF 多线程---- 子线程操作界面主线程的元素
- 【WPF】【C#】使用BackgroundWorker实现多线程/异步操作
- 在WPF中多线程操作GUI控件,串口接…
- WPF简单实例,ListView数据绑定,CheckBox/Button删除操作
- liunx中多线程操作实例解析
- Linux 多线程文件读写操作 +实例
- Linux 多线程文件读写操作 +实例
- 最短路
- Facebook SDK接入备注
- 最新ShareSdk简洁版集成注意事项(IOS)
- 堆
- SQL Server 2008 数据库编程摘要四 :游标篇
- wpf 多线程操作实例
- SQL动态日期列统计
- RandomList 的一个bug
- Echarts通过svg画扇形例子,含矩形、三角形等
- 第一部分 1.变量与基本类型
- Tomcat源码分析(一)------ 架构
- 欧拉公式
- chown 与chmod的区别
- 《数学之美》--读书笔记