Настройка свойств столбца сетки Telerik MVC во время редактирования - PullRequest
0 голосов
/ 19 октября 2011

У меня есть решетка MVC 3 Razor Telerik. У меня есть команда редактирования в строке.

Когда пользователь нажимает кнопку «Изменить» (это переводит сетку в режим редактирования с помощью кнопки «Обновить» и «Отмена»), я хочу установить для двух столбцов свойство только для чтения .

Когда пользователь нажимает кнопку «Отмена» или «Обновить», я хочу вернуть столбцам полное разрешение.

Я знаю, что в контроллере должны быть некоторые свойства, которые я мог бы установить, когда для этого нажата кнопка «Редактировать», но я не видел никаких документов о том, как этого добиться.

Как я могу это сделать?

Я использую элементы управления версии 2011.2.712.340.

1 Ответ

3 голосов
/ 29 октября 2011

То, что вы описали выше, звучит немного запутанно.Назначение свойства readonly состоит в том, чтобы гарантировать, что при переходе строки в режим редактирования столбцы, которые были заданы только для чтения, не могут быть отредактированы, что, по-видимому, является тем, что вы ищете.В обычном режиме чтения все столбцы будут иметь одно и то же разрешение независимо от того, была ли установлена ​​только чтение или нет, поскольку вы просто просматриваете данные, а не редактируете.*

Похоже, вы хотите, чтобы это поле редактировалось при вставке записи, но не при редактировании строки.Ну, это можно сделать с помощью некоторого JavaScript.Если вы используете Ajax-привязку (единственный способ вызвать это событие), вы можете сделать следующее, подписавшись на клиентское событие onEdit:

...
.ClientEvents(clientEvents => clientEvents.OnEdit("onEdit"))
...

А вот и JavaScript:

<script type="text/javascript">
function onEdit(e) {
    var form = e.form;
    var mode = e.mode;

    if (mode == "edit") {
        var country = form.Country; //Country is a public property of my Model
        country.disabled = true;
    }
}

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

...