您的位置:首页 > 其它

DataGrid常用的使用技巧

2011-12-28 11:44 316 查看
1.日期的显示

2.传递DataGrid中的值

3.在DataGrid里添加确认删除的对话框

4.格式化DataGrid :将数据原中的0,1值转换成实际的文字

5.在DataGrid中选择,确认,删除多行复选框列表

6.利用dropdownlist下拉列表框,显示数据库表中的某个字段

7.取得Datagrid里的checkbox返回值

8.datagrid中加入统计值

9.如何用程序隐藏和显示DataGrid中的一列

10如何控制datagrid里编辑功能出现的TextBox的宽度?

1.

d 将日显示为不带前导零的数字(如 1)。

dd 将日显示为带前导零的数字(如 01)。

ddd 将日显示为缩写形式(例如 Sun)。

dddd 将日显示为全名(例如 Sunday)。

M 将月份显示为不带前导零的数字(如一月表示为 1)

MM 将月份显示为带前导零的数字(例如 01/12/01)。

MMM 将月份显示为缩写形式(例如 Jan)。

MMMM 将月份显示为完整月份名(例如 January)。

h 使用12 小时制将小时显示为不带前导零的数字(例如 1:15:15 PM)。

hh 使用 12 小时制将小时显示为带前导零的数字(例如 01:15:15 PM)。

H 使用 24 小时制将小时显示为不带前导零的数字(例如 1:15:15)。

HH 使用 24 小时制将小时显示为带前导零的数字(例如 01:15:15)。

m 将分钟显示为不带前导零的数字(例如 12:1:15)。

mm 将分钟显示为带前导零的数字(例如 12:01:15)。

s 将秒显示为不带前导零的数字(例如 12:15:5)。

ss 将秒显示为带前导零的数字(例如 12:15:05)。

y 将年份 (0-9) 显示为不带前导零的数字。

yy 以带前导零的两位数字格式显示年份(如果适用)。

yyy 以三位数字格式显示年份。

yyyy 以四位数字格式显示年份。



2.传递DataGrid中的值



show.aspx后台代码

private void Page_Load(object sender, System.EventArgs e)

{

// 在此处放置用户代码以初始化页面

Response.Write("您选择的学生ID是:"+Request.QueryString["ID"]);

}
3.在DataGrid里添加确认删除的对话框

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

{

switch(e.Item.ItemType)

{

case ListItemType.Item:

case ListItemType.EditItem:

case ListItemType.AlternatingItem:

Button myDeleteButton = (Button)e.Item.FindControl("btnDelete");

myDeleteButton.Text = "删除此行";

myDeleteButton.Attributes.Add("onclick", "return confirm(’您真的要删除第 " + e.Item.ItemIndex.ToString() + " 行吗?’);");

break;

}

}

private void dgShow_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)

{

if(e.CommandName=="UserDelete")

dgShow_DeleteCommand(source,e);

}
4.将数据原中的0,1值转换成实际的文字



5.在DataGrid中选择,确认,删除多行复选框列表

public void CheckAll(object sender, System.EventArgs e)

{

CheckBox cbAll = (CheckBox)sender;

if(cbAll.Text=="全选")

{

foreach(DataGridItem dgi in dgShow.Items)

{

CheckBox cb = (CheckBox)dgi.FindControl("cbSelect");

cb.Checked = cbAll.Checked;

}

}

}

private void btnDelete_Click(object sender, System.EventArgs e)

{

foreach(DataGridItem dgi in dgShow.Items)

{

CheckBox cb = (CheckBox)dgi.FindControl("cbSelect");

if(cb.Checked)

{

//以下执行删除操作

int nID = int.Parse(dgi.Cells[0].Text);

string strSql = "delete from tbStudentinfo where studentid="+nID;

ExecuteSql(strSql);

}

}

dgShow.CurrentPageIndex = 0;

BindData();

}
6.利用dropdownlist下拉列表框,显示数据库表中的某个字段

foreach(DataGridItem dgi in dgShow.Items)

{

//以下绑定非编辑状态下拉列表

DropDownList ddI = (DropDownList)dgi.FindControl("ddlSexI");

if(ddI!=null)

{

bool bSex = (bool)ds.Tables["studentinfo"].Rows[dgi.ItemIndex]["Sex"];

if(bSex)

ddI.SelectedIndex = 0;

else

ddI.SelectedIndex = 1;

}

//以下绑定编辑状态下拉列表

DropDownList ddE = (DropDownList)dgi.FindControl("ddlSexE");

if(ddE!=null)

{

bool bSex = (bool)ds.Tables["studentinfo"].Rows[dgi.ItemIndex]["Sex"];

if(bSex)

ddE.SelectedIndex = 0;

else

ddE.SelectedIndex = 1;

}

}
7.取得Datagrid里的checkbox返回值

8.datagrid中加入统计值

int count=0;

for (int i = 0; i < ds.Tables[0].Rows.Count; i++)

{

count += int.Parse(ds.Tables[0].Rows[i]["Score"].ToString());

}

int nAv = count/ds.Tables[0].Rows.Count;

foreach(DataGridItem dgi in dgShow.Controls[0].Controls)

{

if (dgi.ItemType == ListItemType.Footer)

dgi.Cells[6].Text = "平均:"+nAv.ToString();

}
9.如何用程序隐藏和显示DataGrid中的一列

dgShow.Columns[0].Visible = false;
10.如何控制datagrid里编辑功能出现的TextBox的宽度?

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

{

if (e.Item.ItemType == ListItemType.EditItem)

{

for (int i=0;i<e.Item.Cells.Count;i++)

{

if(e.Item.Cells[i].Controls.Count>0)

{

TextBox t =(TextBox)e.Item.Cells[i].Controls[0];

t.Width=100;

}

}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: