.NET Framework 为我们提供了一个处理控件闪烁的方案-双缓冲,我们可以直接调用它。

  • 首先自己封装一个Windows组件 MyListView.cs,并让它继承自Listview。
  • 在控件中添加打开双缓冲的代码如下:
public MyListView()
{
// 打开控件的双缓冲
SetStyle(ControlStyles.OptimizedDoubleBuffer | ControlStyles.AllPaintingInWmPaint, true);
}
  • 使用我们封装的MyListview 实例化一个对象,命名为ImageListView, 执行下面的方法来实现异步数据加载
  • private void button1_Click(object sender, EventArgs e)
    {
    	Thread ImageThread = new Thread((ThreadStart)(delegate()
    	{
    		for (int i = 0; i<100000; i++)
    		{
    		// 此处应该警惕值类型装箱造成的"性能陷阱"
    		ImageListView.Invoke((MethodInvoker)delegate()
    		{
    		ImageListView.Items.Add(new ListViewItem(……) );
    		});
    		}
    	}));
    
    	ImageThread.Start();
    }
    

    使用这种方法可以有效的解决加载大量数据的时候造成的界面假死。

    所谓的开放API(OpenAPI)是服务型网站常见的一种应用,网站的服务商将自己的网站服务封装成一系列API(Application Programming Interface,应用编程接口)开放出去,供第三方开发者使用,这种行为就叫做开放网站的API,所开放的API就被称作OpenAPI(开放API)。

    网站提供开放平台的API后,可以吸引一些第三方的开发人员在该平台上开发商业应用,平台提供商可以获得更多的流量与市场份额,第三方开发者不需要庞大的硬件与技术投资就可以轻松快捷的创业,从而达到双赢的目的,开放API是大平台发展、共享的途径,让开发者开发一个有价值应用,付出的成本更少,成功的机会更多。今天,OpenAPI作为互联网在线服务的发展基础,已经成为越来越多互联网企业发展服务的必然选择。下面我就列举一些常见网站服务的Open API文档资源索引。

    SNS类网站API

    Facebook – http://developers.facebook.com/

    人人网开放平台 – http://dev.renren.com/ 《阅读全文》