Редактируемый элемент управления типа «GridView» в ASP.NET MVC - PullRequest
3 голосов
/ 18 марта 2009

Я пытаюсь создать элемент управления типа Editable GridView (столбец Order) с этим кодом в представлении:

<table>
    <tr>
        <th>
            Name
        </th>
        <th>
            Order
        </th>
        <th>
            <img alt="Save order" src="<%= Url.Content("~/Content/minisave.png") %>" />
        </th>
        <th></th>
    </tr>

<% foreach (var item in Model) { %>

    <tr>
        <td>
            <%= Html.Encode(item.Name) %>
        </td>
        <td colspan="2">
            <%= Html.TextBox("Order", item.Order, new { size = "3" }) %>
        </td>
        <td>
            <%= Html.ActionLink("Edit", "Edit", new { id=item.id }) %> |
            <%= Html.ActionLink("Details", "Details", new { id=item.id })%>
        </td>
    </tr>

<% } %>

</table>

Таблица результатов выглядит следующим образом:

alt text

Вопросы : Как мне получить эти данные в моем контроллере? Мне нужен тег формы вокруг стола? Как я узнаю, какая стоимость заказа принадлежит какой записи?

Пара дополнительных вопросов : Если вы видите код, я добавляю атрибут размера на вкладку ввода, но когда браузер отображает его, ввод больше, как я могу это исправить?

Спасибо за вашу помощь!

1 Ответ

2 голосов
/ 18 марта 2009

Я делал это раньше. Я сделал это, имея идентификатор как часть имени и форму вокруг всей таблицы. Таким образом, контроллер извлекает все данные из всех строк и обновляет их сразу, как электронную таблицу.

Это хорошо работает для единицы работы, когда вы редактируете страницу и сохраняете ее, хотя, конечно, вам нужно подумать, как справиться со своей стратегией блокировки, будь то оптимистичная или пессимистическая.

Однако в наши дни лучшей альтернативой может быть использование ajax для отправки определенных значений, чем-то вроде Google Spreadsheet, может быть?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...