Różnice w programowaniu Windows Forms/MFC
Tematy w temacie Using a Windows Form User Control in MFC (Używanie kontrolki użytkownika formularza systemu Windows w MFC) opisują obsługę MFC formularzy systemu Windows. Jeśli nie znasz programu .NET Framework lub programowania MFC, ten temat zawiera podstawowe informacje na temat różnic programistycznych między nimi.
Windows Forms służy do tworzenia aplikacji systemu Microsoft Windows na platformie .NET Framework. Ta struktura zapewnia nowoczesny, zorientowany obiektowo, rozszerzalny zestaw klas, który umożliwia tworzenie rozbudowanych aplikacji opartych na systemie Windows. Za pomocą formularzy systemu Windows można utworzyć bogatą aplikację kliencką, która może uzyskiwać dostęp do wielu różnych źródeł danych oraz udostępniać funkcje wyświetlania danych i edytowania danych przy użyciu kontrolek formularzy systemu Windows.
Jeśli jednak jesteś przyzwyczajony do MFC, możesz użyć do tworzenia niektórych typów aplikacji, które nie są jeszcze jawnie obsługiwane w formularzach Windows Forms. Aplikacje Windows Forms są równoważne aplikacjom okien dialogowych MFC. Nie zapewniają one jednak infrastruktury do bezpośredniej obsługi innych typów aplikacji MFC, takich jak serwer dokumentów OLE/kontener, dokumenty ActiveX, obsługa dokumentów/widoków dla interfejsu jednoekrotnego (SDI), interfejsu wielu dokumentów (MDI) i wielu interfejsów najwyższego poziomu (MTI). Możesz napisać własną logikę, aby utworzyć te aplikacje.
Aby uzyskać więcej informacji na temat aplikacji Windows Forms, zobacz Wprowadzenie do formularzy systemu Windows.
Następujące funkcje routingu poleceń lub widoku MFC lub dokumentu i poleceń nie mają odpowiedników w formularzach systemu Windows:
Integracja powłoki
MFC obsługuje dynamiczne polecenia wymiany danych (DDE) i argumenty wiersza polecenia używane przez powłokę po kliknięciu dokumentu prawym przyciskiem myszy i wybraniu takich czasowników jak Otwórz, Edytuj lub Drukuj. Formularze systemu Windows nie mają integracji powłoki i nie odpowiadają na czasowniki powłoki.
Szablony dokumentów
W MFC szablony dokumentów kojarzą widok, który znajduje się w oknie ramowym (w trybie MDI, SDI lub MTI) z otwartym dokumentem. Formularze systemu Windows nie mają odpowiednika szablonów dokumentów.
Dokumenty
MFC rejestruje typy plików dokumentów i przetwarza typ dokumentu podczas otwierania dokumentu z powłoki. Formularze systemu Windows nie obsługują dokumentów.
Stany dokumentu
MFC utrzymuje zanieczyszczone stany dokumentu. W związku z tym po zamknięciu aplikacji zamknij ostatni widok zawierający aplikację lub zamknij z systemu Windows, usługa MFC wyświetli monit o zapisanie dokumentu. Formularze systemu Windows nie mają równoważnej obsługi.
Polecenia
MFC ma pojęcie poleceń. Pasek menu, pasek narzędzi i menu kontekstowe mogą wywoływać to samo polecenie, na przykład Wycinanie i kopiowanie. W formularzach systemu Windows polecenia są ściśle powiązane zdarzenia z określonego elementu interfejsu użytkownika (na przykład element menu); w związku z tym należy jawnie podłączyć wszystkie zdarzenia polecenia. Można również obsługiwać wiele zdarzeń za pomocą pojedynczej procedury obsługi w formularzach Windows Forms. Aby uzyskać więcej informacji, zobacz Łączenie wielu zdarzeń z pojedynczą procedurą obsługi zdarzeń w formularzach systemu Windows.
Routing poleceń
Routing poleceń MFC umożliwia aktywny widok lub dokument przetwarzania poleceń. Ponieważ to samo polecenie często ma różne znaczenie dla różnych widoków (na przykład kopiowanie działa inaczej w widoku edycji tekstu niż w edytorze graficznym), polecenia muszą być obsługiwane przez aktywny widok. Ponieważ menu i paski narzędzi formularzy systemu Windows nie mają nieodłącznej wiedzy na temat aktywnego widoku, nie można mieć innej procedury obsługi dla każdego typu widoku dla menuItem.Kliknij zdarzenia bez konieczności pisania dodatkowego kodu wewnętrznego.
Mechanizm aktualizacji poleceń
MFC ma mechanizm aktualizacji poleceń. W związku z tym aktywny widok lub dokument jest odpowiedzialny za stan elementów interfejsu użytkownika (na przykład włączenie lub wyłączenie elementu menu lub przycisku narzędzia i zaznaczonych stanów). Formularze systemu Windows nie mają odpowiednika mechanizmu aktualizacji poleceń.
Zobacz też
Używanie kontrolki użytkownika formularza systemu Windows w MFC