我想在检索列表视图值后更改页面加载时的按钮文本。
例如,
<asp:Label ID="favouriteLabel" runat="server" Text='<%# Eval("favourite") %>' />
如果此标签值为1,则该按钮将更改为Favourited。
我通过绑定listview
检索了列表视图值protected void ListView1_ItemDataBound(object sender, ListViewItemEventArgs e)
{
if (e.Item.ItemType == ListViewItemType.DataItem)
{
Label activity = (Label)e.Item.FindControl("favouriteLabel");
activityID = activity.Text;
}
}
然后,我获得了activityID并在页面加载上执行了一个简单的if-else检查
protected void Page_Load(object sender, EventArgs e)
{
if (activityID == "1")
{
Button4.Text = "Favourited";
}
else
{
Button4.Text = "Favourite";
}
}
然而它不起作用。任何人
答案 0 :(得分:0)
答案 1 :(得分:0)
Page_Load发生在ItemDataBound事件之前,因此您在Page_Load中查看的activityId永远不会是1。
只需将您在Page_Load中的代码放入ItemDataBoundEvent
即可