ASP.NET MVC, реализация MVC-Grid с интерактивными элементами

Потратив много времени на исследования, я наконец-то нашел подходящую сетку для моего приложения ASP.NET MVC, это mvc-grid. Теперь, после его реализации все выглядит хорошо, но я заметил, что отсутствует одна важная функция, я не могу нажимать на элементы (столбцы). Насколько я вижу, нет такого свойства, чтобы сообщать одному из столбцов, что он кликабелен (или даже вся строка может быть кликабельна и менять цвет при нажатии). Но мне нужно, чтобы он был кликабельным, чтобы отображать детали выбранного элемента.

Кто-нибудь реализовал этот вид Grid и имеет какую-либо информацию о том, как сделать столбцы фактическими ссылками (кнопками...) и, например, вызвать функцию javascript?

Вот код сетки:

@(Html
.Grid(Model)
.Build(columns =>
{
    columns.Add(model => model.Name).Titled("Name");
    columns.Add(model => model.Surname).Titled("Surname");

    columns.Add(model => model.Age).Titled("Age");   
})
.Pageable(pager =>
{
    pager.PagesToDisplay = 2;
    pager.RowsPerPage = 4;
})
.Filterable()
.Sortable()
)

Спасибо

1 ответ

Я нашел решение для этого компонента Grid. Мне просто нужно добавить столбец следующим образом:

columns.Add().Encoded(false).Sanitized(false).RenderValueAs(o => @<a href="/INV_Locations/Edit/@o.Id" class="btn btn-success btn-sm noDecoration"><span class="glyphicon glyphicon-pencil"></span> Edit</a>).SetWidth(15);

На самом деле это был первый компонент, который я использовал, но так как он не обеспечивает Ajax Paging, мне пришлось переключиться (хотя эти два компонента довольно похожи)

Я пытался использовать этот метод с компонентом, который я использую, но нет такого метода, как RenderValueAsесть метод RenderedAsно он не принимает те же аргументы, и когда я использую его как RenderValueAs метод я получаю ошибку:

 Cannot convert lambda expression to type 'object' because it is not a delegate type

Я предполагаю, что должен быть способ реализовать столбец как ссылку (иначе сетка была бы бесполезна), но нет документации, на которую я мог бы взглянуть, поэтому я надеюсь, что кто-то уже сделал это и может дать мне несколько советов

Спасибо

Другие вопросы по тегам