是否可以基于僅在您有特定 Viewbag 時才允許編輯的功能來制作 Kendo MVC 網格 .Editable()?
我有一個viewbag是Viewbag.DisplayButton。如果您具有開發角色(因此非開發人員無法編輯任何內容),則該視圖包僅是“真實的”。如何使用 .Editable() 進行這項作業,以便只有在擁有該視圖包的情況下才能編輯單元格?
目前,如果我設定 Editable(true),那么任何人(開發人員、客戶、實際上任何人)都可以編輯單元格。如果我將其設定為 Editable(false),那么包括開發人員在內的任何人都無法編輯它。所以我需要一個函式,只有當你有那個特定的 viewbag 時才會這樣做。
uj5u.com熱心網友回復:
為此使用 Razor 代碼塊。您可以將 Grid 定義分配給變數,然后執行條件邏輯并添加其他配置(如果有)。最后呼叫 Render 方法。這是一個例子:
<h3>Some content</h3>
@{
var isAdmin = true;
var grid = (Html.Kendo().Grid<MyModel>()
.Name("grid")
.Columns(columns =>
{
columns.Bound(p => p.MyModelID).Filterable(false);
columns.Bound(p => p.SomeModelProperty);
})
.Pageable()
.Scrollable()
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(20)
.Model(m=>m.Id("MyModelID"))
.Read(read => read.Action("Read", "Grid"))
)
);
if (User.IsInRole("Admin"))
{
grid.Editable(e=>e.Mode(GridEditMode.InCell));
}
grid.Render();
}
<h3>Some other content</h3>
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/453510.html
標籤:asp.net-mvc 剑道衣 网格 视野袋
下一篇:如何在ObservableCollection<MyClass>中系結List<KeyValuePair<MyClass2,int>>?
