请问c#中如何访问datalist控件中ItemTemplate中的label控件
请问c#中如何访问datalist控件中ItemTemplate中的label控件能不能不用LINKBUTTON来触发,而是自动执行代码...
请问c#中如何访问datalist控件中ItemTemplate中的label控件
能不能不用LINKBUTTON来触发,而是自动执行代码 展开
能不能不用LINKBUTTON来触发,而是自动执行代码 展开
1个回答
展开全部
在"源"中指定Label控件的ID,在DataList的ItemCommand事件中取得相应id对应的控件。
"源"代码:
<ItemTemplate>
<div style="text-align:left">
<br />
产品ID: <asp:Label ID="LblProductID" runat="server" Text='<%# Eval("ID") %>'></asp:Label><br />
产品名称:<asp:Label ID="LblName" runat="server" Text='<%# Eval("Name") %>'></asp:Label><br />
产品规格: <%# Eval("Quantity") %><br />
产品价格: <asp:Label ID="LblPrice" runat="server" Text='<%# Eval("Price") %>'></asp:Label><br />
产品描述: <%# Eval("Description") %><br />
<br />
<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.Cart.Buy(id, name, price);
Profile.Save();
}
}
那三个Label lblID、lblName、lblPrice就是DataList控件里对应id的Label了,你可以在程序里对他们操作了
写的已经够详细了吧
"源"代码:
<ItemTemplate>
<div style="text-align:left">
<br />
产品ID: <asp:Label ID="LblProductID" runat="server" Text='<%# Eval("ID") %>'></asp:Label><br />
产品名称:<asp:Label ID="LblName" runat="server" Text='<%# Eval("Name") %>'></asp:Label><br />
产品规格: <%# Eval("Quantity") %><br />
产品价格: <asp:Label ID="LblPrice" runat="server" Text='<%# Eval("Price") %>'></asp:Label><br />
产品描述: <%# Eval("Description") %><br />
<br />
<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.Cart.Buy(id, name, price);
Profile.Save();
}
}
那三个Label lblID、lblName、lblPrice就是DataList控件里对应id的Label了,你可以在程序里对他们操作了
写的已经够详细了吧
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询