C# 使用页面索引事件在Formview中隐藏Linkbutton控件

C# 使用页面索引事件在Formview中隐藏Linkbutton控件,c#,asp.net,C#,Asp.net,我希望能够隐藏Formview上的某些项控件。我定义了一个方法,这样当满足某个要求时,我设置的添加、更新和删除链接按钮将不会显示在我的Formview中。我用来实现这一点的代码如下所示。这在初始显示时正常工作 但是,当使用分页控件时,当Formview中显示另一项时,链接按钮将再次可见 我已尝试使用FormView1_PageIndexchange和_PageIndexchange事件以以下方式重新隐藏链接按钮: protected void FormView1_PageIndexCha

我希望能够隐藏Formview上的某些项控件。我定义了一个方法,这样当满足某个要求时,我设置的添加、更新和删除链接按钮将不会显示在我的Formview中。我用来实现这一点的代码如下所示。这在初始显示时正常工作

但是,当使用分页控件时,当Formview中显示另一项时,链接按钮将再次可见

我已尝试使用FormView1_PageIndexchange和_PageIndexchange事件以以下方式重新隐藏链接按钮:

    protected void FormView1_PageIndexChanged(object sender, EventArgs e)
    {
        // Check to see if PDP requirement has been removed
        if (txtStatusMessages.Text == "PDP Required has been set to False for this User so PDP cannot be updated or signed off.")
        {
            Control lb_n = FormView1.FindControl("LinkButton_New");
            lb_n.Visible = false;
            Control lb_e = FormView1.FindControl("LinkButton_Edit");
            lb_e.Visible = false;
            Control lb_d = FormView1.FindControl("LinkButton_Delete");
            lb_d.Visible = false;
        }
    }
我意识到检查文本框的内容以隐藏控件的想法远非理想;但此时,我只想确保可以使用此方法隐藏项控件

使用调试器运行此代码时,使用寻呼机按钮将触发事件。可见属性已从true正确更改为false。但是,链接按钮仍然可见

有人知道为什么这没有达到预期效果吗

提前感谢,,
加里。

我似乎已经解决了这个问题

最初,我尝试使用FormView1_ModeChange,例如,它允许我在单击编辑链接按钮时取消从只读模式到编辑模式的更改。这起作用了,但意味着链接按钮仍然可见

当进一步研究这个问题时,我发现虽然我可以将Linkbutton的visible属性设置为false,但实际上它们被重置了。这使我认为我的问题是由于事件顺序可能使用了错误的术语,并且Formview的刷新覆盖了我的更改

因此,我添加了一个新的HiddenField来存储允许编辑的类型数据,它将根据用户是否应该能够更新数据项来设置。然后,我将其与PreRender事件一起使用,如下所示:

    protected void FormView1_PreRender(object sender, EventArgs e)
    {
        if (hfEditAllowed.Value == "false")
        {
            Control lb_n = FormView1.FindControl("LinkButton_New");
            lb_n.Visible = false;
            Control lb_e = FormView1.FindControl("LinkButton_Edit");
            lb_e.Visible = false;
            Control lb_d = FormView1.FindControl("LinkButton_Delete");
            lb_d.Visible = false;
        }
    }
这可能不是一个理想的解决方案,但允许我根据需要管理链接按钮的显示

希望这些信息对其他人有用! 加里