Отобразить немодальную форму к существующему приложению - PullRequest
4 голосов
/ 02 декабря 2008

Я хотел бы иметь возможность показывать немодальную форму в уже существующем приложении. На данный момент я могу сделать что-то вроде:

myform.ShowDialog(handleToApp);

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

Кто-нибудь знает, как или если я могу сделать то, что я ищу?

Ответы [ 2 ]

2 голосов
/ 04 декабря 2008

Я нашел то, что искал, вы должны создать класс, который выглядит следующим образом:

public class MapinfoWindowHandle : System.Windows.Forms.IWin32Window
    {
        private IntPtr handle;
        public MapinfoWindowHandle(IntPtr hWnd)
        {
            handle = hWnd;
        }

        #region IWin32Window Members

        IntPtr System.Windows.Forms.IWin32Window.Handle
        {
            get { return handle; }
        }

        #endregion
    }

и тогда вы можете сделать это:

IntPtr windowhandle = new IntPtr(hWnd);
MyForm.Show(new MapinfoWindowHandle(windowhandle));
0 голосов
/ 02 декабря 2008

Как насчет простого myForm.Show()?

...