如何在mvc telerik网格中合并两个或多个单元格 [英] How to merge two or more cells in mvc telerik grid
本文介绍了如何在mvc telerik网格中合并两个或多个单元格的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在Controller中有代码:
I have code in Controller:
[HttpPost, GridAction(EnableCustomBinding = true)]
public ActionResult List(RegisterTeachingListModel model, GridCommand command)
{
if (model == null)
{
model = new RegisterTeachingListModel();
}
var registerTeaching = _registerTeachingService.Search(
semesterValue: model.SearchSemester,
sessionValue: model.SearchSession,
group: model.SearchGroup,
classOpeningId: model.SearchClassOpening,
fromDate: model.SearchFromDate,
toDate: model.SearchToDate
)
.Select(x =>
{
return x.ToModel();
}).ForCommand(command);
int on = (command.Page - 1) * command.PageSize + 1;
var pagedList = registerTeaching.PagedForCommand(command)
.Select(x =>
{
var registerTeachingModel = x;
if (x.SubjectAssignmentId != 0)
{
var SubjectAssignment = ServiceFacade.SubjectAssignmentService.GetById(x.SubjectAssignmentId);
if (SubjectAssignment != null)
registerTeachingModel.SubjectName = SubjectAssignment.SubjectDeclaration.Subject.SubjectBase.Name;
}
if (x.StaffId != 0)
{
var staff = ServiceFacade.StaffService.GetById(x.StaffId);
if (staff != null)
{
registerTeachingModel.StaffName = staff.FullName;
}
}
if (x.ClassOpeningId != 0)
{
var classOpening = ServiceFacade.ClassOpeningService.GetById(x.ClassOpeningId);
if (classOpening != null)
registerTeachingModel.ClassName = classOpening.Name;
}
if (x.Course == (Course)1)
{
registerTeachingModel.IsShowing = true;
}
registerTeachingModel.ON = on++;
return registerTeachingModel;
});
model.RegisterTeachings = new GridModel<RegisterTeachingModel>
{
Data = pagedList,
Total = registerTeaching.Count()
};
return new JsonResult { Data = model.RegisterTeachings };
}
我有代码查看:
I have code in View:
@(Html.Telerik().Grid<Nop.Admin.Models.RegisterTeaching.RegisterTeachingModel>()
.Name("registerTeachings-grid")
.NoRecordsTemplate(T("Admin.Common.NoRecord").ToString())
//set keys for model
.ToolBar(command =>
{
//command.Insert();
//command.Custom().Action("ExportExcel", "RegisterTeaching",
// new { /*routeValues here*/}).Text(T("Admin.Common.ExportToExcel").ToString());
})
.DataKeys(key =>
{
key.Add(model => model.Id);
})
//define columns in grid
.Columns(columns =>
{
columns.Bound(c => c.ON)
.Filterable(false)
.Sortable(false)
.HtmlAttributes(new { @class = "t-header" })
.ReadOnly()
.Title(T("Admin.Common.#").ToString())
.Width(50);
//bound column here
columns.Bound(c => c.Date).Format("{0:dd/MM/yyyy}");
columns.Bound(c => c.Course);
columns.Bound(c => c.ClassOpeningId).ClientTemplate("<#= ClassName #>");
columns.Bound(c => c.SubjectAssignmentId).ClientTemplate("<#= SubjectName #>");
columns.Bound(c => c.StaffId).ClientTemplate("<#= StaffName #>");
columns.Bound(c => c.PPCT);
columns.Bound(c => c.Replace);
columns.Bound(c => c.Preparing);
columns.Bound(c => c.Description);
//command columns here
//columns.Command(commands =>
//{
// commands.Edit().ButtonType(GridButtonType.Image);
// commands.Delete().ButtonType(GridButtonType.Image);
//}).Width(78);
})
//.Editable(editing => editing.Mode(GridEditMode.PopUp).TemplateName("_CreateOrUpdate").AdditionalViewData(
// new
// {
// AvailableGroups = Model.AvailableGroups,
// AvailableLevels = Model.AvailableLevels,
// AvailableStaffGroups = Model.AvailableStaffGroups,
// AvailableSubjects = Model.AvailableSubjects
// })
// )
.Pageable(paging => paging
.PageSize(gridPageSize)
.Position(GridPagerPosition.Both)
)
.DataBinding(dataBinding => dataBinding.Ajax()
.Select("List", "RegisterTeaching")
.Insert("AjaxCreate", "RegisterTeaching")
.Update("AjaxEdit", "RegisterTeaching")
.Delete("AjaxDelete", "RegisterTeaching")
)
.ClientEvents(events => events
.OnDataBinding("onDataBinding")
)
.Reorderable(reordering => reordering.Columns(true))
.Selectable()
.KeyboardNavigation()
.EnableCustomBinding(true)
.Scrollable(scroll => scroll.Height("auto"))
)
请帮帮我!我想合并单元格(相同的图片)
图片演示
推荐答案
这篇关于如何在mvc telerik网格中合并两个或多个单元格的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文