我想实现当“sname”等于Session["name"]时候 显示按钮 否则隐藏,但是我这么写 却报错:Eval()、XPath() 和 Bind() 这类数据绑定方法只能在数据绑定控件的上下文中使用。 <asp:ListView ID="ListView1" runat="server" OnItemDataBound="ListView1_ItemDataBound">
<ItemTemplate>
<% if (Session["name"].ToString() == Eval("sname").ToString())
{
%>
<asp:LinkButton Visible="False" Style="margin-left: 10px;" ID="lnkDelete" runat="server" OnClick="Delete">删除</asp:LinkButton>
<%
}
%> </ItemTemplate>
</asp:ListView>
<ItemTemplate>
<% if (Session["name"].ToString() == Eval("sname").ToString())
{
%>
<asp:LinkButton Visible="False" Style="margin-left: 10px;" ID="lnkDelete" runat="server" OnClick="Delete">删除</asp:LinkButton>
<%
}
%> </ItemTemplate>
</asp:ListView>
另外Session也不是都有值的
{
if (e.Item.ItemType == ListViewItemType.DataItem)
{
LinkButton lnkDelete = e.Item.FindControl("lnkDelete") as LinkButton;
if (lnkDelete != null)
{
if (Session["name"] != null && Session["name"].ToString() == DataBinder.Eval(e.Item.DataItem, "sname").ToString())
{
lnkDelete.Visible = false;
}
else
{
lnkDelete.Visible = true;
}
}
}
}