Как: Пользовательское редактирование имени и значения столбца в Telerik Grid - PullRequest
0 голосов
/ 01 октября 2011

Я новичок в MVC и Telerik и работаю над проектом, в котором участвуют оба из них. В настоящее время я сталкиваюсь с проблемой: использую расширение Teleirk Grids с методом сетки (DataTable), связанным с DataTable:

<% var table = ViewData["NewDesigns"] as DataTable;

Html.Telerik() .Grid(table) .Name("oi") .Pageable(pager => pager.PageSize(100)) .Groupable() .Sortable() .Columns(columns => { columns.Bound(r => r.category).Title("Category"); }) .Render(); %>

Сетка отображается нормально, но я хочу сделать две вещи:

  1. Измените имя столбца на свой пользовательский заголовок /title
  2. Eid Datatable контент перед печатью его в сетке: Например, : если столбец id имеет значение '21', я хочу напечатать его как гиперссылку 21

Я провел много времени в файлах справки telerik и многому научился, но не смог найти ответ на них, буду признателен, если кто-то здесь сможет мне помочь.

Объект DataTable:

    ordr    {myprod.Models.Orders}  myprod.Models.Orders addrss null    string cntact   null    string custmrNam    null    string dlivrdn  null    string dsignr   null    string dsignId  null    string mail null    string id   null    string rdrCd null   string rdrdn    null    string quantity null    string siz  null    string status   null    string ttalPric null    string twn  null    string usrId    null    string'

1 Ответ

1 голос
/ 01 октября 2011

Может помочь следующий пример с пользовательскими заголовками и пользовательскими шаблонами:

Html.Telerik()
    .Grid(table)
    .Name("ordersInum")
    .Columns(columns =>
    {
        columns.Bound(typeof(Int32), "ID").Title("Row ID").Template(Html.ActionLink(item.ID, "Detail", new { r.ID }));
        columns.Bound(typeof(string), "Name").Title("Product").Template(@<text>
                <img src="images/product.png" />
                @item.Name
            </text>);
        columns.Bound(typeof(Double), "Price").Title("Price in $");
        columns.Bound(typeof(DateTime?), "OrderDate").Format("{0:MM/dd/yyyy}").Width(80);
    })
    .Pageable(pager => pager.PageSize(100))
    .Groupable()
    .Sortable()
    .Render();
...