主要目的:取一条记录修改后保存在数据库中.
我在Datalist中邦定了一个Textbox,根据条件可以取出数据记录,但是在保存是不能取到Textbox的值,前台如<asp:TextBox ID="web_name" runat="server" Width="205px" Text='<%#Eval("qz_name") %>'>,后面取值
protected void Button_ok_Click1(object sender, EventArgs e)
{
string QzID = Request.Params["qzid"].ToString();//id
//datalist1.EditItemIndex = e.Item.ItemIndex;
//datalist1.EditItemIndex = e.ToString();
//datalist1.DataBind(); string cs_data = ((TextBox)datalist1.Item.FindControl("web_data")).Text;
string cs_name = ((TextBox)e.Item.FindControl("web_name")).Text;
string cs_tel = ((TextBox)e.Item.FindControl("web_tel")).Text;
string cs_coure = ((TextBox)e.Item.FindControl("web_coure")).Text;
string cs_depart = ((TextBox)e.Item.FindControl("web_depart")).Text;
string cs_rezult = ((TextBox)e.Item.FindControl("web_rezult")).Text;
}
但是编译报错:CS0117: “System.Web.UI.WebControls.DataList”并不包含“Item”的定义
还请指教,谢谢
我在Datalist中邦定了一个Textbox,根据条件可以取出数据记录,但是在保存是不能取到Textbox的值,前台如<asp:TextBox ID="web_name" runat="server" Width="205px" Text='<%#Eval("qz_name") %>'>,后面取值
protected void Button_ok_Click1(object sender, EventArgs e)
{
string QzID = Request.Params["qzid"].ToString();//id
//datalist1.EditItemIndex = e.Item.ItemIndex;
//datalist1.EditItemIndex = e.ToString();
//datalist1.DataBind(); string cs_data = ((TextBox)datalist1.Item.FindControl("web_data")).Text;
string cs_name = ((TextBox)e.Item.FindControl("web_name")).Text;
string cs_tel = ((TextBox)e.Item.FindControl("web_tel")).Text;
string cs_coure = ((TextBox)e.Item.FindControl("web_coure")).Text;
string cs_depart = ((TextBox)e.Item.FindControl("web_depart")).Text;
string cs_rezult = ((TextBox)e.Item.FindControl("web_rezult")).Text;
}
但是编译报错:CS0117: “System.Web.UI.WebControls.DataList”并不包含“Item”的定义
还请指教,谢谢
<ItemTemplate>
<asp:TextBox ID="TextBox1" runat="server" text="test"></asp:TextBox>
<asp:Button ID="Button1" rune="sever" Text="取值" ></asp:Button>
</ItemTemplate>
</asp:DataList> 点击Button1 取出TextBox1 的值
protected void DataList1_ItemCommand(object source, DataListCommandEventArgs e)
{
TextBox textbox1 = (TextBox) e.Item.FindControl("TextBox1");
string text= textbox1.Text //止句取出TextBox1 的文本
}
总结 对一般的DataList ,DataGrid ,DataView 按钮事件都是通过这种方法取得所套用的控件。
中我先没有加OnItemCommand,现在加了后出显新的问题了,报错如下:
编译器错误信息: CS0123: “Button_ok_Click1”的重载均与委托“System.EventHandler”不匹配
源错误:行 59: </tr>
行 60: <tr>
行 61: <td style="width: 762px"><asp:Button ID="Button_ok" runat="server" OnClick="Button_ok_Click1" Text="修改" />
再次请教,谢谢