c#中如何访问datalist控件中ItemTemplate中的控件值
1个回答
展开全部
在"源"中指定Label控件的ID,在DataList的ItemCommand事件中取得相应id对应的控件。
"源"代码:<ItemTemplate
<div style="text-align:left"/产品ID: <asp:Label ID="LblProductID" runat="server" Text='<%# Eval("ID") %'</asp:Label /
产品名称:<asp:Label ID="LblName" runat="server" Text='<%# Eval("Name") %'</asp:Label /
产品规格: <%# Eval("Quantity") % /
产品价格: <asp:Label ID="LblPrice" runat="server" Text='<%# Eval("Price") %'</asp:Label /
产品描述: <%# Eval("Description") % //<asp:LinkButton ID="LinkButton1" runat="server" CommandName="Buy"Buy</asp:LinkButton</div</ItemTemplate
这行<asp:LinkButton ID="LinkButton1" runat="server" CommandName="Buy"Buy</asp:LinkButton是添加了一个LinkButton按钮,它的CommandName属性是"Buy",是ItemCommand事件的一个标记,表示按下了这个LinkButton按钮。
程序代码(写在ItemCommand事件里面)
protected void DltProduct_ItemCommand(object source, DataListCommandEventArgs e){if (e.CommandName == "Buy"){// 完成购买
Label lblID = e.Item.FindControl("LblProductID") as Label;
Label lblName = e.Item.FindControl("LblName") as Label;
Label lblPrice = e.Item.FindControl("LblPrice") as Label;
int id = Convert.ToInt32( lblID.Text );
string name = lblName.Text;
decimal price = Convert.ToDecimal( lblPrice.Text);
Profile.Save();}}那三个Label lblID、lblName、lblPrice就是DataList控件里对应id的Label了,你可以在程序里对他们操作了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询