use Response.Write(t.Text) to write out what is in your TextBox t, also, add an ID to your TextBox, then do
TextBox t = ((TextBox)(e.Item.FindControl("YourTextBoxID"))).Text
TextBox t = ((TextBox)(e.Item.FindControl("YourTextBoxID"))).Text
调试欢乐多
每次都在 Page_Load 事件中将 DataGrid 的值都 Bind了一次。
对DataGrid进行edit,update时,都会调用 Page_Load 事件。
请
你试试
if ( !IsPostBack) //页面非提交时的Page_Load
{
//在这里对 DataGrid进行数据绑定
}
{
// 在此处放置用户代码以初始化页面
dataSetResource=new System.Data.DataSet();
if (Page.IsPostBack)
{
WebClient.localhost.Resource ws = new WebClient.localhost.Resource();
ws.Credentials = System.Net.CredentialCache.DefaultCredentials;
dataSetResource.Clear();
string Resource=this.DropDownListResourceName.Items[this.DropDownListResourceName.SelectedIndex].Text;
string begindate=this.TextBoxBeginDate.Text;
string enddate=this.TextBoxEndDate.Text;
string sqlstatemant = "select * from 资源管理 where (资源名='" +
Resource + "') and ((开始时间 between '" + begindate + "' and '" +
enddate + " 23:59') or (结束时间 between '" + begindate + "' and '" +
enddate + " 23:59') or (开始时间<='" + begindate + "' and 结束时间 >='" +
enddate + " 23:59'))";
dataSetResource.Merge(ws.GetData(sqlstatemant,"Resource"));
DataGridResource.DataSource=dataSetResource;
DataGridResource.DataBind();
}
}private void DataGridResource_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
int row=Convert.ToInt32(e.Item.ItemIndex);
TextBox t = (TextBox)(e.Item.Cells[0].Controls[0]);
dataSetResource.Tables[0].Rows[row]["开始时间"]=t.Text;
WebClient.localhost.Resource ws = new WebClient.localhost.Resource();
ws.Credentials = System.Net.CredentialCache.DefaultCredentials;
ws.UpdateData("select * from 资源管理","Resource",dataSetResource);
DataGridResource.EditItemIndex = -1;
DataGridResource.DataBind();
}