ホームページ >よくある問題 >wpfとwinformの違い

wpfとwinformの違い

(*-*)浩
(*-*)浩オリジナル
2019-06-14 11:55:2943095ブラウズ

WinForm は、ネット開発プラットフォームにおける Windows フォームの名前です。

WPF (Windows Presentation Foundation) は、Microsoft によって開始された Windows ベースのユーザー インターフェイス フレームワークであり、.NET Framework 3.0 の一部です。これは、統一されたプログラミング モデル、言語、およびフレームワークを提供し、インターフェイス設計者と開発者の作業を真に分離すると同時に、新しいマルチメディア インタラクティブ ユーザー グラフィカル インターフェイスを提供します。 Winform を置き換えるために Microsoft によって発売された製品です。インターフェイス設計者と開発者の作業を分離し、マルチメディア インタラクティブ ユーザー グラフィカル インターフェイスを提供できます。3 つのコア アセンブリ セットは、presentationcore、presentationFramework、および windowsBase

wpfとwinformの違い

WPF と winform の最大の違いは、WPF の最下層は DirectX を使用し、winform の最下層は GDI を使用することです。そのため、WPF のグラフィカル インターフェイスが優れています

# #(推奨される学習:

PHP ビデオ チュートリアル)

GDI (グラフィックス デバイス インターフェイス) グラフィックス デバイス インターフェイス。その主なタスクは、描画プログラム間の情報の交換と処理を担当することです。すべての Windows プログラムのグラフィックス出力

DirectX (Direct Extension) マルチメディア プログラミング インターフェイスは、3D グラフィックスとサウンド効果を強化し、多くの API で構成されています。性質に応じて、表示部、音声部、入力部、ネットワーク部の 4 つの部分に分けることができます。

WinForm プログラムを開発する場合、最も厄介な問題の 1 つは、ワーカー スレッドがそのプロパティを変更することです。を制御してプログラムをクラッシュさせますが、この不正な操作は毎回失敗するわけではありません。 WinForm コントロールは、現在のスレッドがコントロール作成スレッドであるかどうかを判断する InvokeRequired プロパティを提供します。問題は、コントロール ツリーが非常に深い場合、このプロパティの速度が遅くなるということです。

WPF の設計が開始されたとき、マルチスレッドの問題が考慮されました。ほとんどの WPF クラスは DispatcherObject を継承します。 DispatcherObject は、実際には Dispatcher を単純にカプセル化したものです。 Dispatcher は、InvokeRequired と同様のメソッド (CheckAccess) を提供します。この方法はスレッド ID を比較するだけなので高速です。さらに、Dispatcher は優先キュー、非同期呼び出し、タイマーなどの機能を提供し、マルチスレッド GUI プログラムの開発を簡素化します。

コントロールの構成

WinForm でチェックボックス付きのドロップダウン メニューを実装したい場合は、複雑な処理が必要になります。ウィンドウメッセージ。 WPF コントロールのコンテンツ モデルとレイアウト システムを通じて、WPF コントロールには、.Net CLR オブジェクトを含むあらゆる種類のコントロールを含めることができます。最新のコントロール メーカーの多くもコンポジション コントロールを提供しており、その実装方法は WPF のコンテンツ モデルに似ています。 WPF 開発チームは Infragistics のアイデアの多くを借用する必要がありました。この基盤があれば、新しい WPF コントロールの開発がより簡単になります。

XAML

個人的には、XAML は WPF においてもっと画期的なものであるべきだと考えています。 XAML を使用すると、複雑なオブジェクト グラフをテキストで記述することができます。このアイデアは VB にすでに存在していますが、XAML はツールを使用して XAML を生成できるように簡素化されています。コマンドやルーティング イベントなどのメカニズムを通じて、インターフェイス設計者とプログラマは比較的明確な境界線を持ちます。

PHP 関連の技術記事の詳細については、

PHP グラフィック チュートリアル 列にアクセスして学習してください。

以上がwpfとwinformの違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。