如何控制datagrid里编辑功能出现的TextBox的宽度,传递DataGrid中的值,如何用程序隐藏和显示DataGrid中的一列

本博客详细介绍了在网页应用中使用DataGrid组件进行学生信息管理,包括页面加载时初始化页面、添加确认删除对话框、数据转换、多行删除、数据绑定、下拉列表显示、Checkbox操作、统计计算、列隐藏显示、编辑功能宽度控制等关键功能的应用与实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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; 
           } 
         } 
       } 
     }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值