Проверка строки в представлении сетки и отображение сообщения

Я использую только элементы управления телериком. Я проверяю строку, и если проверка не удалась при определенном условии. Мне нужно открыть radwindow и показать пользователю сообщение о том, что есть какая-то ошибка.

private void radGridViewHolidays_RowValidating(object sender, GridViewRowValidatingEventArgs e)
    {
   if (condition )
        {
           e.valid=false;
           Radwindow.Alert("error message");
         }
    }

Когда я выполняю приведенный выше код, мерцает radwindow, и я не могу закрыть окно и не могу изменить значение в сетке.

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

Когда я использую messagebox.show(), он работает нормально. Для этого мне нужно использовать только управление телериком (Radwindow).


person user2526236    schedule 24.12.2014    source источник
comment
похоже, вам нужно проверить Telerik Radwindow.Alert, у них есть образцы на их сайте.. и почему бы вам просто не использовать базовый JavaScript...? также, почему вам нужно использовать только Telerik ... есть много способов снять кожу с этой кошки ... и, поскольку вам лень выполнять простой поиск в Google, вот хорошая ссылка - stackoverflow.com/questions/12909701/ пожалуйста, приложите больше усилий с Рождеством   -  person MethodMan    schedule 24.12.2014
comment
@k Если бы я мог. Я бы сделал это. Мне нужно сделать это только с помощью Radwindow. Прочитайте вопрос.   -  person user2526236    schedule 24.12.2014


Ответы (1)


объект, представляющий содержимое, и обработчик событий, который должен обрабатывать событие Closed окна RadWindow.

private void radGridViewHolidays_RowValidating(object sender, GridViewRowValidatingEventArgs e)
    {
   if (condition )
        {
           e.valid=false;
           Radwindow.Alert("error message", this.OnClosed);
         }
    }

попробуй так

private void OnClosed( object sender, WindowClosedEventArgs e )
{
    RadWindowManager.Current.CloseAllWindows();
}

C#

RadWindowManager1.RadAlert("An <br /><b>html</b> string.<br />", 200, 100);

Примечание. Внешний вид диалогового окна предупреждения определяется двумя вещами: свойством Skin объекта RadWindowManager и значениями, которые вы передаете в качестве аргументов в RadAlert. Аргументы могут включать строку HTML, которую вы передаете в качестве сообщения, ширину, высоту и строку заголовка.

Дополнительная информация

person Midhun Mundayadan    schedule 24.12.2014
comment
@ Мне нужно это для Silverlight, и я не могу создать свое собственное окно. Мне нужно использовать существующее окно, согласованное с приложением. - person user2526236; 24.12.2014
comment
@ user2526236 Вы добавили пространство имен? - person Midhun Mundayadan; 24.12.2014
comment
@ Midhun У меня не может быть другого окна только для этого сценария. Мне нужно использовать существующее окно radwindow, так как окно остается неизменным во всем приложении. - person user2526236; 24.12.2014
comment
@midhun Это не работает. Используя radwindow.alert() у меня есть только одна кнопка OK. Кнопка, которая должна закрыть окно, не происходит. - person user2526236; 24.12.2014
comment
@ midhun я могу закрыть окно по нажатию кнопки ОК. - person user2526236; 24.12.2014
comment
да, используя обработчик событий ok, вы можете добиться этого docs.telerik.com/devtools /silverlight/api/html/ - person Midhun Mundayadan; 24.12.2014
comment
Давайте продолжим обсуждение в чате. - person user2526236; 24.12.2014
comment
Я просто хочу закрыть окно нажатием кнопки ОК. - person user2526236; 24.12.2014
comment
RadWindow.Confirm(Вы уверены?, this.OnClosed); вы можете использовать вот так - person Midhun Mundayadan; 24.12.2014
comment