根据条件在aspx页面中隐藏项目模板
Hide item template in aspx page based on condition
我的列表视图中有以下项目模板
<ItemTemplate>
<asp:LinkButton ID="ibtnEdit" runat="server" Height="20px" Width="20px" ToolTip="Edit this Category" CommandArgument='<%# Eval("Category_ID") %>' CommandName="EditObject" CausesValidation="False"> <i class="glyphicon glyphicon-edit"></i> </asp:LinkButton>
</ItemTemplate>
我想根据以下条件隐藏此列。此状态字段包含 1 或 0。
<%# Bind("Status") %>
我不知道该怎么做
@aniltc 你也想根据条件 0 和 1 使其可见吗?
试试这个,但没有测试,我相信逻辑会相似:
if (txt_Status.Text != "")
{
string a, b;
a=0;
b=1;
if (txt_Status.Text==a)
{
LinkButton lnkEdit = [YourDatalist].FindControl("ibtnEdit") as LinkButton;
lnkEdit.Visible = false;
}
else if (txt_Status.Text == b)
{
LinkButton lnkEdit = [YourDatalist].FindControl("ibtnEdit") as LinkButton;
lnkEdit.Visible = true
}
}
我尝试使用以下代码,它有效
<asp:LinkButton ID="ibtnEdit" runat="server" Height="20px" Width="20px" ToolTip="Edit this Category"
CommandArgument='<%# Eval("Category_ID") %>' Visible='<%# DecideHere((int)Eval("Status")) %>' CommandName="EditObject"
CausesValidation="False"> <i class="glyphicon glyphicon-edit"></i> </asp:LinkButton>
在后面的代码中
protected bool DecideHere(int id)
{
if (id == 1 )
return true;
else
return false;
}
您可以像这样在 link 按钮上设置可见 属性:
Visible='<%# Iif(Eval("Status")=1,True,False) %>'
请注意,您要使用 Eval 而不是 Bind 来进行单向数据读取。
我的列表视图中有以下项目模板
<ItemTemplate>
<asp:LinkButton ID="ibtnEdit" runat="server" Height="20px" Width="20px" ToolTip="Edit this Category" CommandArgument='<%# Eval("Category_ID") %>' CommandName="EditObject" CausesValidation="False"> <i class="glyphicon glyphicon-edit"></i> </asp:LinkButton>
</ItemTemplate>
我想根据以下条件隐藏此列。此状态字段包含 1 或 0。
<%# Bind("Status") %>
我不知道该怎么做
@aniltc 你也想根据条件 0 和 1 使其可见吗?
试试这个,但没有测试,我相信逻辑会相似:
if (txt_Status.Text != "")
{
string a, b;
a=0;
b=1;
if (txt_Status.Text==a)
{
LinkButton lnkEdit = [YourDatalist].FindControl("ibtnEdit") as LinkButton;
lnkEdit.Visible = false;
}
else if (txt_Status.Text == b)
{
LinkButton lnkEdit = [YourDatalist].FindControl("ibtnEdit") as LinkButton;
lnkEdit.Visible = true
}
}
我尝试使用以下代码,它有效
<asp:LinkButton ID="ibtnEdit" runat="server" Height="20px" Width="20px" ToolTip="Edit this Category"
CommandArgument='<%# Eval("Category_ID") %>' Visible='<%# DecideHere((int)Eval("Status")) %>' CommandName="EditObject"
CausesValidation="False"> <i class="glyphicon glyphicon-edit"></i> </asp:LinkButton>
在后面的代码中
protected bool DecideHere(int id)
{
if (id == 1 )
return true;
else
return false;
}
您可以像这样在 link 按钮上设置可见 属性:
Visible='<%# Iif(Eval("Status")=1,True,False) %>'
请注意,您要使用 Eval 而不是 Bind 来进行单向数据读取。