私は共有レイアウトで1つのGridLookupコントロールを使用するDevexpress MVCアプリケーションを使用しています。ここでは、すべてのリクエストに対してメソッドを呼び出すコントローラーが必要でした。この目的のために、私はベースコントローラを使用し、ActionExecutingContextメソッドを使用して、私はメニューロードとgridlookupロードを呼び出しています。 viewdataを使用して値を設定しています。共有ビューでは、GridLookupコントロールのビューの一部を使用して、ビューデータをGridLookupにバインドしています。 以下は、gridlookupのメニューとフィルターを読み込むために使用される基本コントローラーです。以下共有レイアウトのバインドGridLookupコントロールmvc 5
protected override void OnActionExecuting(ActionExecutingContext context)
{
base.OnActionExecuting(context);
ProcessingMenus();
}
iはgridlookup制御のpartialview以下
@Html.Partial("_ReportFilter")
この部分で使用GridLookup制御で使用している共有レイアウトである:上記GridLookupで
@{
var gridLookup = Html.DevExpress().GridLookup(settings =>
{
settings.Name = "LookupLobMultiple";
settings.KeyFieldName = "Description";
settings.GridViewProperties.CallbackRouteValues = new { Controller = "Manage", Action = "BindLOB" };
settings.Properties.SelectionMode = GridLookupSelectionMode.Multiple;
settings.Properties.TextFormatString = "{0}";
settings.Properties.MultiTextSeparator = ";";
settings.CommandColumn.Visible = true;
settings.CommandColumn.ShowSelectCheckbox = true;
settings.CommandColumn.SelectAllCheckboxMode = GridViewSelectAllCheckBoxMode.AllPages;
settings.GridViewProperties.SettingsPager.Visible = false;
settings.GridViewProperties.Settings.ShowGroupPanel = false;
settings.GridViewProperties.Settings.ShowFilterRow = false;
settings.Columns.Add("ID").Visible = false;
settings.Columns.Add("Description").Caption = "Line of Business";
settings.PreRender = (s, e) =>
{
MVCxGridLookup gl = (MVCxGridLookup)s;
gl.GridView.Selection.SelectRowByKey(ViewData["LOB"]);
};
});
}
@gridLookup.BindList(ViewData["LobModal"]).GetHtml()
をコントロールは、ProcessingMenus
メソッドでロードしているビューデータを使用してバインディングデータを見ることができます。 GridLookupの最初の問題はコントローラーとアクションメソッドも使用しましたが、これはチェックして値をオフにして読み込みを表示しているときに呼び出されません。 2番目の問題はいつか後でurlを再度押すとOnActionExecuting
メソッドはありませんそのために呼び出されたメニューは再び読み込まれません。
この質問にお答えできますか?まだ誰かの返信を待っています。ご不明な点がありましたら、お尋ねください。 –
DevExpressサポートに質問してみませんか? – Mikhail
こんにちはミハイル、私はdevexpressフォーラムで同じ質問をして答えを得ました。 –