2

以编程方式启用或禁用在 C# 中编辑 FormView 的能力的最佳方法是什么?理想情况下,我正在寻找类似的东西:

if (user.IsAdmin())
    FormView.Editable = true;

else
    FormView.Editable = false;

但我似乎找不到可以让我这样做的属性。我定义了一个编辑项目模板,所以当我看到 FormView 时总是会出现“编辑”按钮。

如果您需要任何其他信息,请告诉我。我故意没有发布任何代码以使其尽可能通用-我可以根据自己的情况对其进行调整。谢谢!

4

1 回答 1

2

我能给出的最佳建议如下:

使用您要定位的编辑按钮设置您的项目模板。例如

<asp:Formview ...>
  ...
  <ItemTemplate>
    ...
    <asp:Button runat="server" id="edit_button" CommandName="Edit" Text="Edit" />
    ...
  </ItemTemplate>
</asp:FormView>

然后,在您的代码隐藏中,您可以根据权限允许/禁止该按钮。例如

void Page_Load(...)
{
  ...
  ((Button)this.formView.FindControl("edit_button")).Enabled = User.IsAdmin();
  ...
}
于 2013-01-10T19:52:20.137 回答