繁体中文
设为首页
加入收藏
当前位置:.Net技术首页 >> Asp.Net开发 >> 如何在DataGrid里面使用动态图形表示数字

如何在DataGrid里面使用动态图形表示数字

2007-07-15 08:00:00  作者:  来源:互联网  浏览次数:0  文字大小:【】【】【
简介:本文将要简单的介绍如何在DataGrid里面用图形表是一个数字,听起来好象要用到GUI的编程,其实不然,如果你读完全文你就会发现其实很简单,只是一个“小把戏”而已,但是请不要失望,其实在实际的应用中这个“小把...

本文将要简单的介绍如何在DataGrid里面用图形表是一个数字,听起来好象要用到GUI的编程,其实不然,如果你读完全文你就会发现其实很简单,只是一个“小把戏”而已,但是请不要失望,其实在实际的应用中这个“小把戏”就是你项目中的一个亮点。

首先为了实现这个功能我们需要一个DataGrid,并且为这个DataGrid邦定数据,具体的邦定代码如下(由于我说明问题的重点不在如何邦定DataGrid所以我就是用了最原始的邦定方法,目的旨在说明主题)。

画一个DataGrid在HTML里面,代码就像下面的一样,我使用了一个测试的数据库和一个测试的表名字都叫test,同时这个test表里面有a,b,c3个字段:

正如你看到的,我们使用了一个模版列来显示数据,它只是一个Label而不是Image,其他两个是邦定字段,c就是我们要显示的数字了。

OK,接下来我们看看,cs的部分,帮定代码如下:

SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"]);

SqlDataAdapter da = new SqlDataAdapter("select a,c from test",conn);

DataSet ds = new DataSet();

da.Fill(ds);

this.DataGrid1.DataSource = ds.Tables[0];

this.DataGrid1.DataBind();

非常简单。因为我不喜欢将数据邦定代码写在HTML里面所以我使用了ItemDataBound事件来完成这件事情。具体的代码如下:

private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e) {

if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem){

Label lbl = (Label)e.Item.Cells[1].FindControl("Label1");

lbl.Text = "


";

}

}

看上去是不是很简单?呵呵,希望你不会以为我在骗你,好了按照上面的步骤创建一个页面试一试吧,效果不错,我想通过他还可以实现其他很多有关数据的显示,比如:比例。不过这种比例的计算你最好在邦定之前处理好放到DataTable里面,这样邦定的代码将非常简单。运行的结果如下:

好了!此文已完,祝大家工作顺利!

:P

责任编辑:admin
相关文章