Нашла https://infostart.ru/public/91399/ где описано , как реализовать проверку орфографии для обычных форм. Подскажите пожалуйста , как это сделать для управляемых форм.
(0) Проверка офографии для управляемых форм ничем не отличается от обычных.
Кусок из нашей конфы.
//Проверка правописания и орфографии. Источник http://help1c.com/faq/view/642.html
// Создадим объект MS Word, он должен быть установлен
Если ОбъектMSWord = Неопределено Тогда
Попытка
ОбъектMSWord = Новый COMОбъект("Word.Application");
Исключение
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = 'Microsoft Word не установлен!'"));
Возврат;
КонецПопытки;
КонецЕсли;
Элементы.СловаДляЗамены.Видимость = Ложь;
СловаДляЗамены.Очистить();
Элементы.НаименованиеПроектаДляПроверки.Видимость = Ложь;
НаименованиеПроектаДляПроверки = Текст;
НетОшибок = ОбъектMSWord.CheckSpelling(Текст);
Если НЕ НетОшибок Тогда // текст содержит ошибки. Проверим каждое слово и выведем ошибочные.
Док = ОбъектMSWord.Documents.Add(); // Создадим новый документ
Область = Док.Range(0,0); // Получим пустую область в начале документа
Область.InsertBefore(Текст); // Добавим в документ текст
Для каждого Слово Из Область.Words Цикл
СловоДляПроверки = СокрЛП(Слово.Text);
НетОшибок = ОбъектMSWord.CheckSpelling(СловоДляПроверки);
Если НЕ НетОшибок Тогда // Слово ошибочно
НаименованиеПроектаДляПроверки = СтрЗаменить(НаименованиеПроектаДляПроверки, СловоДляПроверки, "<span style=""color:red"">" + СловоДляПроверки + "</span>");
// покажем возможные замены неправильного слова
СтрокаВариантов = "";
// Получим варианты правописания
Варианты = Слово.GetSpellingSuggestions( ,1, ,0);
Для каждого Вариант Из Варианты Цикл
Если ЗначениеЗаполнено(Вариант.Name) Тогда
СтрокаВариантов = СтрокаВариантов + ", " + Вариант.Name;
НоваяСтрока = СловаДляЗамены.Добавить();
НоваяСтрока.Слово = СловоДляПроверки;
НоваяСтрока.СловоДляЗамены = Вариант.Name;
НоваяСтрока.Представление = СловоДляПроверки + " " + Вариант.Name;
КонецЕсли;
КонецЦикла;
Если ЗначениеЗаполнено(СтрокаВариантов) Тогда
СтрокаВариантов = ". Варианты замены: " + Сред(СтрокаВариантов, 2);
Сообщить(НСтр("ru = 'Ошибка в слове: '") + СловоДляПроверки + СтрокаВариантов);
КонецЕсли;
КонецЕсли;
КонецЦикла;
Док.Close(0,,); // закроем документ без сохранения wdDoNotSaveChanges
Элементы.СловаДляЗамены.Видимость = Истина;
ТекстСообщения = НСтр("ru = 'Данный текст возможно содержит ошибки!'");
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения,, "Объект.НаименованиеПроекта");
НаименованиеПроектаДляПроверки = "<ht ml><head></head><body style=""margin:0px;padding:0px""><span style=""font-size:12px"">" + НаименованиеПроектаДляПроверки + "</span></body></html>";
Элементы.НаименованиеПроектаДляПроверки.Видимость = Истина;
КонецЕсли;