Поскольку Batch
обновление лучше для наших требований, мы пытаемся создать TreeList с режимом редактирования InCell
, используя KendoUI для MVC.(inline
работает как положено).
Демонстрационная ссылка: https://demos.telerik.com/aspnet-mvc/treelist/editing-incell
В разделе «Панель инструментов» он принимает метод «Создать», но для «Сохранить» и «Отмена» он выбрасывает,
'TreeListToolbarFactory<>' does not contain definition for 'Save' and no extension method 'Save' accepting first argument of type 'TreeListToolbarFactory<>' could not be found.
Для TreeListEditMode.InCell выбрасывает,
The name does not exist in the current context
Код бритвы
@(Html.Kendo().TreeList<KendoEx.Web.Models.Level>()
.Name("lvlTreeList")
.Toolbar(toolbar =>
{
toolbar.Create();
toolbar.Save();
toolbar.Cancel();
})
.Columns(columns =>
{
columns.Add().Field(e => e.LvlName).Title("Name").Width(220);
columns.Add().Field(e => e.LvlType).Title("Type").Width(100);
columns.Add().Command(c =>
{
c.CreateChild().Text("Add child");
c.Edit();
c.Destroy();
}
).Width(240);
})
.Editable(e => e.Mode(TreeListEditMode.InCell))
.DataSource(dataSource => dataSource
.Read(read => read.Action("GetLevel", "Level"))
.Create(create => create.Action("Save", "Level"))
.Update(update => update.Action("Save", "Level"))
.Destroy(delete => delete.Action("Remove", "Level"))
.Model(m =>
{
m.Id(f => f.Id);
m.ParentId(f => f.ParentLvl).DefaultValue(0);
m.Expanded(true);
m.Field(f => f.LvlName);
m.Field(f => f.LvlType);
})
)
.Height(550)
)
Модель
public class Level
{
public int Id { get; set; }
public string LvlName { get; set; }
public string LvlType { get; set; }
public int? ParentLvl { get; set; }
public bool hasChildren { get; set; }
}
Version Info: Telerik 2018.1.221.545, MVC 5.2, .NET 4.6
Пожалуйста, сообщите об этом.