Проверка столбца в RadGrid, когда EditMode=InPlace
У меня очень раздражающая проблема с проверкой столбца в RadGrid. В режиме редактирования (НА МЕСТЕ) я хочу, чтобы столбец проверялся при нажатии кнопки изображения для отправки.
Проблема в том, что мой GridTextBoxColumnEditor перемещен вверх, чтобы освободить место для сообщения об ошибке, если проверка не пройдена. Поэтому, когда форма редактирования загружена, элементы управления имеют различное вертикальное положение. Я думаю, что должно быть возможно переместить GridTextBoxColumnEditor вверх и показать сообщение ТОЛЬКО в случае сбоя проверки. Тогда все элементы управления получат правильное выравнивание. Я пытался создать валидатор в событии InsertCommand, но это не сработало. Ниже вы можете увидеть мой код:
protected void gridReports_ItemCreated(object sender, GridItemEventArgs e)
{
if (e.Item is GridEditableItem && e.Item.IsInEditMode)
{
GridEditableItem editedItem = e.Item as GridEditableItem;
GridTextBoxColumnEditor editor = null;
if (editedItem["description"].Text == " ")
{
editor = (GridTextBoxColumnEditor)editedItem.EditManager.GetColumnEditor("description");
TableCell cell = (TableCell)editor.TextBoxControl.Parent;
RequiredFieldValidator validator = new RequiredFieldValidator();
validator.ControlToValidate = editor.TextBoxControl.ID;
validator.ErrorMessage = "Field is mandatory!";
cell.Controls.Add(validator);
}
Ребята, у вас есть предложения?
1 ответ
Если вы установите для свойства отображения валидатора значение "Динамический", это должно решить вашу проблему.
validator.Display = ValidatorDisplay.Dynamic;