wpf中实现数据的逐条加载显示效果
来源:互联网 发布:罗技m100r 知乎 编辑:程序博客网 时间:2024/06/01 09:18
实现的效果是往集合类里面添加一条数据,控件上就显示一条数据;
xaml ================================<Window x:Class="ThreadedWpfExplorer.Window2" Loaded="Window_Loaded" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="Window2" Height="300" Width="300"> <Window.Resources> <DataTemplate x:Key="listBoxTemplate"> <TextBlock Text ="{Binding Name}" Padding="2" FontFamily="宋体" FontWeight="Normal" FontSize="12px" /> </DataTemplate> </Window.Resources> <Grid> <ListBox Name="lst" Margin="0,68,0,0" ItemTemplate="{StaticResource listBoxTemplate}"> </ListBox> <Button Content="Button" Height="27" HorizontalAlignment="Left" Margin="12,12,0,0" Name="button1" VerticalAlignment="Top" Width="78" Click="button1_Click" /> </Grid></Window> cs =================================== 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.Shapes; namespace ThreadedWpfExplorer{ /// <summary> /// Window2.xaml 的交互逻辑 /// </summary> public partial class Window2 : Window { public Window2() { InitializeComponent(); } private void Window_Loaded(object sender, RoutedEventArgs e) { } private void button1_Click(object sender, RoutedEventArgs e) { List<Employee> _employees = new List<Employee>(); for (int i = 0; i < 100; i++) { Employee temp = new Employee(); temp.name = "aaa" + i.ToString(); _employees.Add(temp); } lst.ItemsSource = _employees; } } public class Employee { public string name=string.Empty ; public string Name { get { return name; } set { name=value ;} } }}//-----------------------------------------------------------------------ThreadPool.QueueUserWorkItem(delegate { for (int i = 0; i <= 100 && Application.Current != null; i++) { Application.Current.Dispatcher.BeginInvoke((Action)delegate { Employee temp = new Employee(); temp.name = "aaa" + i.ToString(); _employees.Add(temp); lst.SelectedItem = temp; lst.ScrollIntoView(temp); }); Thread.Sleep(100); } });
用多线程处理能实现想要的效果;
- wpf中实现数据的逐条加载显示效果
- Android逐条加载ListView,实现动画更新
- Android逐条加载ListView,实现动画更新
- Android逐条加载ListView,实现动画更新
- Android逐条加载ListView,实现动画更新
- 如何在WPF中实现类似Android的ProgressDialog效果
- WPF中RichTextBox实现和Winform一样的效果
- WPF/Silverlight ListBox 数据横向显示的实现
- 加载数据之前的加载等待中效果
- txt格式数据的逐条处理
- 如何在Oracle中向Collection类型的变量中逐条插入数据。
- 正在加载数据中效果
- WPF中动态加载数据<ItemsControl>
- ListView GridView中item加载显示的动画效果
- WPF 实现跑马灯效果的Label控件,数据绑定方式实现
- 页面加载中效果实现
- android调用H5显示加载中效果
- WPF实现简单的反射效果
- 关于C语言的位作用域,恩,要好好看看,貌似还没怎么接触过呢,丢脸啊
- 在windows中搭建虚拟ASM环境创建Oracle 10G数据库
- Silverlight项目打开报错
- mysql远程登录
- Minimize Code by Using jQuery and Data Templates
- wpf中实现数据的逐条加载显示效果
- CListctrl用法
- Linux中errno使用
- WPF计时器
- C++中的文件输入输出操作
- Gtk-WARNING **: cannot open display: :0.0之解决
- 利用shell脚本查询访问次数最多的100条记录
- 用CImage类来显示PNG、JPG等图片
- windows SDK编程基础-Button类的封装 .