Sdílet prostřednictvím


Postupy: Podpora COM Interop zobrazením formuláře Windows pomocí metody ShowDialog

Problémy s interoperabilitou modelu COM (Component Object Model) můžete vyřešit zobrazením formuláře Windows Ve smyčce zpráv rozhraní .NET Framework, která je vytvořena pomocí metody Application.Run.

Pokud chcete, aby formulář fungoval správně z klientské aplikace modelu COM, musíte ho spustit ve smyčce zpráv Windows Forms. K tomu použijte jeden z následujících přístupů:

Postup

Použití metody Form.ShowDialog může být nejjednodušší způsob, jak zobrazit formulář ve smyčce zpráv rozhraní .NET Framework, protože ze všech přístupů vyžaduje nejmenší kód k implementaci.

Metoda Form.ShowDialog pozastaví smyčku zpráv nespravované aplikace a zobrazí formulář jako dialogové okno. Vzhledem k tomu, že smyčka zpráv hostitelské aplikace byla pozastavena, metoda Form.ShowDialog vytvoří novou smyčku zpráv rozhraní .NET Framework pro zpracování zpráv formuláře.

Nevýhodou použití metody Form.ShowDialog je, že formulář bude otevřen jako modální dialogové okno. Toto chování blokuje všechna uživatelská rozhraní ve volající aplikaci při otevření formuláře Windows. Když uživatel ukončí formulář, smyčka zpráv rozhraní .NET Framework se zavře a smyčka zpráv starší aplikace se znovu spustí.

Ve Windows Forms můžete vytvořit knihovnu tříd, která má metodu pro zobrazení formuláře, a poté sestavit knihovnu pro interop s modely COM. Tento soubor DLL můžete použít z jazyka Visual Basic 6.0 nebo Microsoft Foundation Classes (MFC) a z obou těchto prostředí můžete volat metodu Form.ShowDialog k zobrazení formuláře.

Pro podporu interakce s COM zobrazením Windows formuláře pomocí metody ShowDialog

Viz také