Silverlight に関して、これまでの経験を概説します。(注:これを読み直すと少しネガティブに聞こえますが、欠けている機能を指摘しています。全体的には、C# を使用したブラウザのリッチ UI である Silverlight が気に入っています。岩)。
大きな違いは、右クリック、マウスホイールのサポート、印刷機能がなく、新しいウィンドウを開くことができないことです。OOB SL アプリを通知領域に置くことはできません。JavaScript でマウス イベントを処理できますが、アプリで OOB を移動する場合は処理できません。
また、SL チームは、LOB の適合性を損なうほどセキュリティについて過度に懸念しているようです (新しいウィンドウがない、OOB でのローカル システム アクセスの信頼設定、通知領域など)。
これらのいくつかは、Silverlight アプリが Windows と互換性がないように感じさせます。ハイライトテキスト、右クリックコピーについて考えてみてください。または、貼り付けを右クリックします。多くの人が使用するこれらの基本的な操作が欠落しています。また、エイリアンの UI 体験のようにも感じられます。たとえば、マウスホイールで本能的にグリッドをスクロールしようとしても機能しません。これはブラウザーのどのテーブルでも機能しますが、SL では機能しません。
プログラミングに関しては、私は WPF をあまり使用したことがありませんが、私が知る限り、いくつかの問題に対処する方法にはいくつかの大きな違いがあります。
SL にマークアップ拡張機能がありません。また、整数のインデックス付きバインディングしかないため、いくつかのトリックのないプロパティ バッグはありません。トリガーがないため、常にコードを記述してイベントを接続する必要があります (より動的なページではイライラします)。ツールキットの ImplicitStyleManager を除いて、継承可能なスタイリングはありませんが、これは仕事に適していません。
したがって、特定の LOB アプリについては問題ありませんが、他のアプリについては、いくつかの手順を踏まなければなりません (たとえば、クライアントのカスタマイズ性が必要な場合)。しかし、すべての LOB アプリに適しているわけではありません。
私の印象では、SL はまだ完成していないように感じます。多くの問題があります。たとえば、データグリッドがイライラする (自動ストレッチしない、サブクラス化が非常に難しい)、オートコンプリート ボックスが少し不安定、ナビゲーション フレームワークが少し不格好、コンボボックス/ツリービューをバインドするのが難しい (必要に応じて、実際には整理されていない)。 SelectedItem を itemsSource の別のオブジェクトにバインドします)。
全体として、Silverlight はもうすぐそこまで来ています。いくつかの制限や細かな問題を受け入れる準備ができている限り、問題ありません。