Sdílet prostřednictvím


Rozdíly v programování mezi prostředími Windows Forms a MFC

Témata týkající se použití uživatelského ovládacího prvku Windows Form v prostředí MFC popisují podporu prostředí MFC pro model Windows Forms. Pokud nejste obeznámeni s programováním rozhraní .NET Framework nebo MFC, toto téma obsahuje základní informace o programovacích rozdílech mezi těmito dvěma.

model Windows Forms slouží k vytváření aplikací systému Microsoft Windows v rozhraní .NET Framework. Tato architektura poskytuje moderní, objektově orientované a rozšiřitelnou sadu tříd, které umožňují vyvíjet bohaté aplikace založené na Windows. S model Windows Forms můžete vytvořit bohatou klientskou aplikaci, která má přístup k široké škále zdrojů dat a poskytuje zařízení pro zobrazení dat a úpravy dat pomocí ovládacích prvků model Windows Forms.

Pokud jste ale zvyklí na MFC, můžete být zvyklí vytvářet určité typy aplikací, které ještě nejsou explicitně podporovány v model Windows Forms. model Windows Forms aplikace jsou ekvivalentní aplikacím dialogových oken MFC. Neposkytuje však infrastrukturu pro přímou podporu jiných typů aplikací MFC, jako je například server dokumentů OLE nebo kontejner, dokumenty ActiveX, podpora document/view pro rozhraní SDI (Single-Document Interface), rozhraní s více dokumenty (MDI) a více rozhraní nejvyšší úrovně (MTI). Můžete napsat vlastní logiku pro vytvoření těchto aplikací.

Další informace o aplikacích model Windows Forms naleznete v tématu Úvod do model Windows Forms.

Následující funkce zobrazení nebo dokumentu nebo směrování příkazů MFC nemají v model Windows Forms žádné ekvivalenty:

  • Integrace prostředí

    MFC zpracovává příkazy dynamické výměny dat (DDE) a argumenty příkazového řádku, které prostředí používá, když kliknete pravým tlačítkem myši na dokument a vyberete takové příkazy jako Otevřít, Upravit nebo Tisk. model Windows Forms nemá žádnou integraci prostředí a nereaguje na příkazy prostředí.

  • Šablony dokumentů

    V prostředí MFC přidružují šablony dokumentů zobrazení, které je obsaženo v okně rámečku (v režimu MDI, SDI nebo MTI) s dokumentem, který jste otevřeli. model Windows Forms nemá žádný ekvivalent šablon dokumentů.

  • Dokumenty

    MFC registruje typy souborů dokumentů a zpracovává typ dokumentu při otevření dokumentu z prostředí. model Windows Forms nemá podporu dokumentů.

  • Stavy dokumentů

    MFC udržuje pro dokument špinavé stavy. Proto když aplikaci zavřete, zavřete poslední zobrazení, které obsahuje aplikaci, nebo ukončete ze systému Windows, mfc vás vyzve k uložení dokumentu. model Windows Forms nemá žádnou ekvivalentní podporu.

  • Příkazy

    MFC má koncept příkazů. Řádek nabídek, panel nástrojů a místní nabídka můžou vyvolat stejný příkaz, například vyjmout a kopírovat. V model Windows Forms jsou příkazy úzce vázané události z určitého prvku uživatelského rozhraní (například položky nabídky). Proto je nutné připojit všechny události příkazu explicitně. V model Windows Forms můžete také zpracovat více událostí pomocí jedné obslužné rutiny. Další informace naleznete v tématu Připojení více událostí k jedné obslužné rutině události v model Windows Forms.

  • Směrování příkazů

    Směrování příkazů MFC umožňuje aktivní zobrazení nebo dokument zpracovávat příkazy. Vzhledem k tomu, že stejný příkaz má často různé významy pro různá zobrazení (například kopírování se chová jinak v zobrazení pro úpravy textu než v grafickém editoru), musí být příkazy zpracovány aktivním zobrazením. Vzhledem k tomu, že model Windows Forms nabídky a panely nástrojů nemají žádné základní znalosti aktivního zobrazení, nelze pro každý typ zobrazení pro události MenuItem.Click použít jinou obslužnou rutinu, aniž byste museli psát další interní kód.

  • Mechanismus aktualizace příkazů

    MFC má mechanismus aktualizace příkazů. Aktivní zobrazení nebo dokument proto odpovídá za stav prvků uživatelského rozhraní (například povolení nebo zakázání položky nabídky nebo tlačítka nástroje a kontrolovaných stavů). model Windows Forms nemá žádný ekvivalent mechanismu aktualizace příkazu.

Viz také

Použití uživatelského ovládacího prvku Windows Form v prostředí MFC