ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Getting .NET form to respond to Excel window events (https://www.excelbanter.com/excel-programming/388561-getting-net-form-respond-excel-window-events.html)

[email protected]

Getting .NET form to respond to Excel window events
 
Hi,

I am writing a COM add-in for Excel using c#. Everything works fine,
but I am trying to get the some finishing touches sorted out and one
of them is bugging me and I cannot see anything written on the web
trying to achieve this:

My add-in displays a couple of windows forms and some of these behave
more like floating toolbars than standalone modal dialogs. I want to
be able to somehow mirror the behaviour that normal Office commandbars
exhibit (and to some extent modal windows forms) in that:

* when Excel is minimized or deactivated I would like these
"floating" forms to disappear and when Excel is reactivated or
restored to reappear

* when Excel has the focus I would like the form to float over
other windows (if it is not positioned over Excel).

My natural approach is to try to use the api setparent call, but this
does not do what I want. does anyone have any other dieas about how
to do this. ideally, I do not want to hook Excel and respond to
events myself, but would prefer it if their was a natural way I can
"attach" the window to Excel.

Any help is much appreciated.
Seth


XL-Dennis

Getting .NET form to respond to Excel window events
 
Seth,

In VB.NET the following snippet code makes the form to be part of Excel:

Dim frm As New AboutBox1
Dim appWindow As New NativeWindow

Try

appWindow.AssignHandle(Process.GetCurrentProcess() .MainWindowHandle)
frm.ShowDialog(appWindow)
Catch ex As Exception
MessageBox.Show(ex.ToString, My.Application.Info.Title.ToString)
Finally
appWindow.ReleaseHandle()
End Try


Is this what You want?

---------------
With kind regards,
Dennis
Weekly Blog .NET & Excel: http://xldennis.wordpress.com/
My English site: http://www.excelkb.com/default.aspx
My Swedish site: http://www.xldennis.com/


All times are GMT +1. The time now is 03:35 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com