powered by simpleCommunicator - 2.0.38     © 2025 Programmizd 02
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Надстройка Outlook 2010
2 сообщений из 2, страница 1 из 1
Надстройка Outlook 2010
    #39702591
d.n
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
d.n
Гость
Здравствуйте.
Не использовал VB еще со времен VB6
Начинаю изучать VB.net, прошу помочь в решении след. проблемы

Пробую разрабатывать надстройку для Outlook 2010 в Visual Studio 2015 (VB)
Создал проект Office/SharePoint/Надстройка VSTO для Outlook 2010
Добавил область формы Outlook FormRegion1, смежную, почтовое сообщение IPM.Note
Разместил в FormRegion1 - DataGridView и кнопку
хочу вручную (без связи с источником данных) заполнять DataGridView

столкнулся с двумя проблемами:

1) в событии инициализации FormRegion

Код: vbnet
1.
2.
3.
4.
5.
Private Sub FormRegion1Factory_FormRegionInitializing(ByVal sender As Object, ByVal e As Microsoft.Office.Tools.Outlook.FormRegionInitializingEventArgs) Handles Me.FormRegionInitializing
	Dim formRegion As Microsoft.Office.Tools.Outlook.IFormRegion
                For Each formRegion In Globals.FormRegions
                    If TypeOf formRegion Is FormRegion1 Then
                        Dim formRegion1 As FormRegion1 = CType(formRegion, FormRegion1)



при активации строки текущего письма в области содержимого
и отображении письма и региона в окне чтения:
Globals.FormRegions Count = 0
соответственно, - в цикл не захожу
и к formRegion1.DataGridView1.Rows обратиться не могу

в окне открытого письма (открытие письма двойным кликом) - все работает

2) при попытке заполнения DataGridView1:
в DataGridView1 2 поля,

formRegion1.DataGridView1.Rows.Clear()
formRegion1.DataGridView1.Rows.Add("Запись1", "Запись1")
formRegion1.DataGridView1.Rows.Add("Запись2", "Запись2")
formRegion1.DataGridView1.Rows.Add("Запись3", "Запись3")

после этого:
добавленные записи появляются в окне чтения,
в окне открытого письма они не отображаются

при нажатии кнопки в событии
Код: vbnet
1.
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click



в окне отладки у formRegion1.DataGridView1.Rows.Count = 3

если я правильно понял, - DataGridView в разных формах (письмо одно) - это разные объекты

как обратиться (заполнить) к DataGridView при инициализации письма - не могу найти
в то же время при открытии письма в том же событии - позиционируюсь на FormRegion,
но заполняется DataGridView в области просмотра, то есть - там, где я его хочу заполнить в случае 1)

коды подсматриваю в:
Доступ к области формы во время выполнения


Модератор: Тема перенесена из форума "Visual Basic".
...
Рейтинг: 0 / 0
Надстройка Outlook 2010
    #39703380
d.n
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
d.n
Гость
Всем спасибо, разобрался

Все оказалось просто.
Я пытался работать с DataGridView в событии инициализации FormRegion:
Код: vbnet
1.
Private Sub FormRegion1Factory_FormRegionInitializing


т.к. обрабатывал отображение DataGridView при наличии определенного прикрепления, и заполнения данными этого прикрепления

Естественно, как оказалось - до инициализации FormRegion, - Globals.FormRegions - пустая
1) Оставил e.Cancel = True при отсутствии нужного прикрепления.
2) Перенес заполнение DataGridView в событие отображения (отрабатывает, как нужно, - если not e.Cancel)
Код: vbnet
1.
Private Sub FormRegion1_FormRegionShowing
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Надстройка Outlook 2010
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]