关于网友提出的“ gridview如何增加空行?”问题疑问,本网通过在网上对“ gridview如何增加空行?”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题: gridview如何增加空行?描述:
在GridView中,添加一个空的行,然后让用户输入数据,最后保存。
解决方案1:
这个我看行:
http://www.cnblogs.com/lgzh3/archive/2008/10/23/1318119.html
ascx.cs
if (!Page.IsPostBack)
//获取表结构
{
if (dv.Count < 1)
{
else
dv.Sort = "SetDetailID";
}
///
DataSet ds = ((DataSet)ViewState["ds"]);
ds.Tables[0].Rows[(int)e.Item.ItemIndex].Delete() ;
BindGrid();
///
/// 添加
//增加一个空行
public void addRow()
{
{
DataView dv = ds.Tables[0].DefaultView;
DataGrid.DataSource = dv;
DataGrid.EditItemIndex = count - 1;
ViewState["ds"] = ds;
return;
}
}
newRow = ds.Tables[0].NewRow();
newRow["SetDetailID"] = count;
/>
newRow["PhoneNum"] = "";
newRow["NoticeType"] = 0;
dv.Sort = "SetDetailID";
ViewState["ds"] = ds;
/>
///
{
// gEditIndex = e.Item.ItemIndex.ToString();
}
///
/// 取消
public void DataGrid_Cancel(object sender, DataGridCommandEventArgs e)
BindGrid();
}
//取得当前行
int row = Convert.ToInt32(e.Item.ItemIndex);
//{
// strErr = "通知人不能为空";
//}
// strErr = "所属单位不能为空";
// MagicAjax.AjaxCallHelper.Write("alert('" + strErr + "');");
// //需要重新绑定
// BindGrid();
// return;
int NoticeType = 0;
if (list.Items[0].Selected == true && list.Items[1].Selected == true)
{
}
else if (list.Items[0].Selected == true)
{
NoticeType = 1;
else if (list.Items[1].Selected == true)
{
NoticeType = 2;
}
//{
// strErr = "通知方式不能为空";
// MagicAjax.AjaxCallHelper.Write("alert('" + strErr + "');");
string temp = de.Key.ToString();
{
}
DataTable dt = ds.Tables[0];
if (dt.Rows[i]["NoticeMan"].ToString().Equals(NoticeMan) && row!=i)
flag = false;
break;
DataRow updateRow = ds.Tables[0].Rows[row];
ViewState["ds"] = ds;
addRow();
}
else
/>
{
strErr = "更新失败,用户名不能重复";
}
runat="server" /> /> CausesValidation="false" runat="server" ID="Imagebutton2" /> |
可以动态添加Footer
单击添加就把GridView的ShowFooter属性设置为true。
单击保存就把GridView的ShowFooter属性设置为false。
效果很不错,LZ试试~~
Grid不是要绑定DataTable吗,在DataTable里AddNew一个新行就好了。
解决方案6:http://www.cnblogs.com/lgzh3/archive/2008/10/23/1318119.html
解决方案7: DataSet ds;
DataRow dr = ds.Tables[0].NewRow();
dr[0] = System.Int32.Parse("0");
ds.Tables[0].Rows.InsertAt(dr, 0);
http://topic.csdn.net/u/20081207/14/65a7da2e-9255-43cc-b819-75bc67e4d753.html
解决方案9: 看2楼的回答
http://topic.csdn.net/u/20081207/14/65a7da2e-9255-43cc-b819-75bc67e4d753.html
动态地控制数据源datatable