|
Office AddIn
|
|||
---|---|---|---|
#18+
Добрый день. Есть плагин для офиса. Надо получить главное окно офиса как объект Control Наверное распишу подробней, может есть другие решения. В плагине есть окна сообщений, которые, если есть родительское окно, центрируются по отношению к родителю. Если нету родителя - по центру экрана и TopMost = true. Так вот надо как-то указать окнам сообщений что у них есть родитель. Пробовал такой код: Код: c# 1. 2. 3. 4.
но значения m_messageForm.Parent и m_messageForm.Owner остаются null и мои сообщения ведут себя как будто нету родителя ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2013, 11:14 |
|
Office AddIn
|
|||
---|---|---|---|
#18+
voa, просто реализацию IWin32Window в вызов ShowDialog передайте ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2013, 11:21 |
|
Office AddIn
|
|||
---|---|---|---|
#18+
Изопропил, В моем примере так и сделано. Свойства Owner и Parent остаются null. Проблема еще в том что содержание кода сообщений я менять не могу. Единственное как я могу заставить сообщения вести себя хорошо - задать значения для Parent. А он имеет тип Control ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2013, 11:27 |
|
Office AddIn
|
|||
---|---|---|---|
#18+
voaНадо получить главное окно офиса как объект Control главное окно офиса таковым не является. Родителя в смысле "WinForms" у диалога нет. Winapi в помощь - по windows хэндлу главного окна получите его размеры , координаты, состояние и позиционируйте свой диалог как нужно ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2013, 13:23 |
|
|
start [/forum/topic.php?fid=20&tid=1404300]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
64ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
2ms |
others: | 12ms |
total: | 164ms |
0 / 0 |