フォームビューを編集するためのユーザー/管理者シナリオを用意しようとしています。私が持っているのは、フォームビューの編集ボタンがデフォルトで visible=true であることです。次に、ロールが管理者と等しくないかどうかを示すステートメントを使用し、編集ボタンの可視性を false に設定します。クリックしたり、ポストバックを実行したりすると、本来のように機能します。ユーザーが管理者の場合、アイテムは非表示のままです...のようなステートメントを使用するフィルタリングにドロップダウンリストを使用する場合を除きますdataSource1.FilterExpression = ("ID=" + ddl1.SelectedValue)
。
フォームビューの編集リンク ボタンのデフォルトの可視性を true に設定するか false に設定するかに関係なく、FilterExpression を使用すると、望ましくないものの可視性が変更されます。これは、FilterExpression がコントロールの可視性を、コントロールのデフォルトの可視性プロパティが設定されているものに設定するためです。
以下は、私が意味することの例としてのコードです。助けてください!
protected void Page_PreRender(object sender, EventArgs e)
{
string role;
role = "client";
LinkButton editGeneralOverview = (LinkButton)formViewGeneralOverview.FindControl("EditButton");
if (role != "admin"))
{
editGeneralOverview.Visible = false;
}
if (ddlIDFilter.SelectedValue != "-- ALL --")
{
dataSourceGeneralOverview.FilterExpression = ("ID=" + ddlIDFilter.SelectedValue);
}