Delen via


Verschillen in Windows Forms/MFC-programmering

In de onderwerpen in Het gebruik van een Windows-formuliergebruikersbesturingselement in MFC wordt de MFC-ondersteuning voor Windows Forms beschreven. Als u niet bekend bent met programmeren met .NET Framework of MFC, vindt u in dit onderwerp achtergrondinformatie over programmeerverschillen tussen de twee.

Windows Forms is bedoeld voor het maken van Microsoft Windows-toepassingen in .NET Framework. Dit framework biedt een moderne, objectgeoriënteerde, uitbreidbare set klassen waarmee u uitgebreide Windows-toepassingen kunt ontwikkelen. Met Windows Forms kunt u een uitgebreide clienttoepassing maken die toegang heeft tot een breed scala aan gegevensbronnen en faciliteiten voor het weergeven en bewerken van gegevens biedt met windows Forms-besturingselementen.

Als u echter gewend bent aan MFC, bent u mogelijk gewend aan het maken van bepaalde soorten toepassingen die nog niet expliciet worden ondersteund in Windows Forms. Windows Forms-toepassingen zijn gelijk aan MFC-dialoogvenstertoepassingen. Ze bieden echter niet de infrastructuur voor rechtstreekse ondersteuning van andere MFC-toepassingstypen, zoals OLE-documentserver/-container, ActiveX-documenten, de ondersteuning voor document/weergave voor SDI (single-document interface), multiple-document interface (MDI) en meerdere MTI (Top Level Interface). U kunt uw eigen logica schrijven om deze toepassingen te maken.

Zie Inleiding tot Windows Forms voor meer informatie over Windows Forms-toepassingen.

De volgende MFC-weergave of document- en opdrachtrouteringsfuncties hebben geen equivalenten in Windows Forms:

  • Shell-integratie

    MFC verwerkt de DDE-opdrachten (Dynamic Data Exchange) en opdrachtregelargumenten die door de shell worden gebruikt wanneer u met de rechtermuisknop op een document klikt en dergelijke werkwoorden als Openen, Bewerken of Afdrukken selecteert. Windows Forms heeft geen shell-integratie en reageert niet op shell-werkwoorden.

  • Documentsjablonen

    In MFC koppelen documentsjablonen een weergave, die is opgenomen in een framevenster (in de MDI-, SDI- of MTI-modus), aan het document dat u hebt geopend. Windows Forms heeft geen equivalent aan documentsjablonen.

  • Documenten

    MFC registreert documentbestandstypen en verwerkt het documenttype bij het openen van een document vanuit de shell. Windows Forms biedt geen ondersteuning voor documenten.

  • Documentverklaringen

    MFC onderhoudt vuile statussen voor het document. Wanneer u de toepassing sluit, de laatste weergave van de toepassing afsluit, of Windows afsluit, vraagt MFC u het document op te slaan. Windows Forms heeft geen equivalente ondersteuning.

  • Opdrachten

    MFC heeft het concept van opdrachten. De menubalk, werkbalk en contextmenu kunnen allemaal dezelfde opdracht aanroepen, bijvoorbeeld Knippen en kopiëren. In Windows Forms zijn opdrachten nauw gebonden gebeurtenissen van een bepaald UI-element (zoals een menu-item); Daarom moet u alle opdracht-gebeurtenissen expliciet koppelen. U kunt ook meerdere gebeurtenissen afhandelen met één handler in Windows Forms. Zie Meerdere gebeurtenissen verbinden met één gebeurtenis-handler in Windows Forms voor meer informatie.

  • Opdrachtroutering

    Met MFC-opdrachtroutering kan de actieve weergave of het actieve document opdrachten verwerken. Omdat dezelfde opdracht vaak verschillende betekenissen heeft voor verschillende weergaven (bijvoorbeeld: Kopiëren gedraagt zich anders in de tekstbewerkingsweergave dan in een grafische editor), moeten de opdrachten worden verwerkt door de actieve weergave. Omdat menu's en werkbalken van Windows Forms geen inherent inzicht hebben in de actieve weergave, kunt u geen andere handler hebben voor elk weergavetype voor uw MenuItem.Klik-gebeurtenissen zonder extra interne code te schrijven.

  • Mechanisme voor het bijwerken van opdrachten

    MFC heeft een systeem voor opdrachtupdates. Daarom is de actieve weergave of het document verantwoordelijk voor de status van de gebruikersinterface-elementen (bijvoorbeeld het in- of uitschakelen van een menu-item of gereedschapsknop, en geselecteerde staten). Windows Forms heeft geen equivalent van een mechanisme voor het bijwerken van opdrachten.

Zie ook

Gebruik maken van een Windows Forms-gebruikersbesturingselement in MFC