問題タブ [wpf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
6 に答える
12572 参照

.net - WPF アンチエイリアシングの回避策

WPFでアンチエイリアシングをオフにすることはできません。しかし、小さいときに WPF フォントのぼやけた外観を削除したいと考えています。

1 つの可能性は、.net 2.0 コンポーネントを使用することです。これにより、透明度機能とブレンド サポートが失われるようです。しかし、それを試したことはありません。

誰にもこれに対する解決策がありますか?それによる欠点はありますか?

ありがとうございました

0 投票する
2 に答える
8217 参照

.net - NavigationServiceはいつ初期化されますか?

ユーザーが前方にナビゲートできないように、ページからNavigationService.Navigatingイベントをキャッチしたいと思います。このように定義されたイベントハンドラーがあります。

...そしてそれはうまくいきます。ただし、このコードをどこに配置するかは正確にはわかりません。

これをページのコンストラクターまたはInitializedイベントハンドラーに配置すると、NavigationServiceはnullのままになり、NullReferenceExceptionが発生します。ただし、ページのLoadedイベントハンドラーに配置すると、ページに移動するたびに呼び出されます。私が正しく理解していれば、それは私が同じイベントを複数回処理していることを意味します。

同じハンドラーをイベントに複数回追加しても大丈夫ですか(ページのLoadedイベントを使用してフックする場合と同じように)?そうでない場合、初期化とロードの間にこの配線を行うことができる場所はありますか?

0 投票する
4 に答える
1922 参照

wpf - では、この WPF で何が欠けているのでしょうか?

背景: 由緒ある Sasami2k にインスパイアされた UI を備えた小さなビデオ再生アプリがあり、VMR9 (DirectShow を使用した Direct3D9) を使用するように更新され、不安定になりません。現在、必要に応じて生の Win32 を使用する C++ アプリになっています。特に WPF は、空域の制限により不可能でした。

さて、D3DImage が存在するようになったので、D3D/VMR9/DirectShow と WPF を組み合わせて使用​​できる可能性があります。Win32 の非拡張性に対する過去のフラストレーションを考えると、これは良いことのように思えます。

でもほら、ここで最初のハードルに落ちています。

Win32 を使用して、サイズ変更可能で比例的にサイズ変更され、画面の端にスナップし、最大化すると画面全体 (タスクバー領域を含む) を占めるボーダレス ウィンドウを (非常に簡単に) 作成しました。これは動画アプリなので、これらはすべて非常に望ましいプロパティです。

では、WPF で同じことを行うにはどうすればよいでしょうか。

Win32 では、次を使用します。 WM_GETMINMAXINFO を使用して最大化動作を制御します WM_NCHITTEST 境界のサイズ変更を制御します

ただし、ドキュメントを誤解していない限り、WPF を見ると、さまざまなイベントの到着が遅すぎるようです。

たとえば、LocationChanged は、ウィンドウが移動したときにのみ起動すると言うため (これは遅すぎます)、いつ移動しているのかわかりません。同様に、StateChanged は、ウィンドウが復元/最大化された後にのみ発生するようです (システムに正しい最大化サイズを伝えるために、最大化の前に情報が必要な場合)。

そして、システムがサイズ変更について教えてくれるところを完全に見落としているようです。ヒットテストも同様です。

それで、ええと、ここで何かが足りないのでしょうか、それとも、とにかくこのことの wndproc をフックすることに戻るしかありませんか? WndProc をフックせずにやりたいことができますか?

WndProc を使用する必要がある場合は、既存のコードベースに固執することもできます。よりシンプルでクリーンな UI コードが必要であり、WndProc から離れることはその基本です。

WndProc をフックする必要がある場合は、疑問に思う必要があります-なぜですか? Win32 には、sizing/sized、moving/moved、poschanged/poschanged ウィンドウ メッセージがあり、それらはすべて役に立ちます。WPF が同じ一連のイベントをレプリケートしないのはなぜですか? 機能の不必要なギャップのようです。

さらに、WPF が特定の USER32 依存の実装に関連付けられていることを意味します。これは、MS が (たとえば Windows 7 または 8 で) 表示レイヤーを反転して WPF を「ネイティブ」にし、レガシ アプリの HWND と WndProcs をエミュレートできないことを意味します。

0 投票する
3 に答える
8163 参照

c# - ボタン付きのWPFリストボックススタイル

ListBoxItems用に定義されたスタイルを持つListBoxがあります。このスタイルの中に、いくつかのラベルとボタンがあります。そのボタンの1つとして、自分のページ(またはそのスタイルを使用する任意のページ)で処理できるクリックイベントを定義したいと思います。ListBoxItemsスタイルからイベントを処理するためにWPFページにイベントハンドラーを作成するにはどうすればよいですか?

これが私のスタイルです(影響を受けるコードのみ):

ありがとう!

0 投票する
8 に答える
3783 参照

.net - 誰かがWPFのガイドを教えてくれますか

WPF の適切なガイドを見つけるのに苦労しています。
私は C# と .NET の経験がありますが、WPF については、テクノロジー全体の通常のマーケティング的な説明を除いて何も知りません。
誰でも、WPF に関する初心者向けの優れたチュートリアル/ガイドを教えてもらえますか。

0 投票する
8 に答える
57056 参照

c# - コードでMenuItem.Iconを設定するWPF

その中にpngを含む画像フォルダーがあります。そのpngにMenuItemのアイコンを設定したいと思います。これを手続き型コードでどのように記述すればよいですか?

0 投票する
2 に答える
5305 参照

wpf - WPFでItemTemplateを動的に設定するにはどうすればよいですか?

WPFを使用して、手続き型コードを介してItemTemplateを動的に設定するTreeViewコントロールがあります。どうすればよいですか?どこかでリソースを見つける必要があると思います。

0 投票する
3 に答える
567 参照

.net - WPF はどれくらい安定していますか?

WPF の安定性は、WPF プログラムの安定性ではなく、API 自体の「安定性」の観点からです。

説明させてください:

Microsoft は、新しいテクノロジを使用して方法論全体を変更することで有名です。Silverlight 1 から Silverlight 2 への移行と同様です。WPF では、MS が .NET サービス パックのリリースで多くのものを変更したことを知っています。彼らがどれだけ物事を変えたかはわかりません。要するに、あなたの意見では、彼らは次のリリースでシステムを再び改良するつもりですか、それともシステムの大部分を変更しないほど十分に安定していると思いますか. リリースごとに何かを忘れなければならないのは嫌です。

質問が長くなりすぎていないことを願っています。

0 投票する
1 に答える
7666 参照

c# - XAML での静的フィールドへのアクセス

xaml でクラスの静的プロパティを参照するにはどうすればよいですか? 言い換えれば、私はこのようなことをしたい:

BasedOn でこれを行う構文は何ですか? StaticResourceある程度の使用が必要になると思いましたが、うまくいきませんでした。

0 投票する
2 に答える
12923 参照

wpf - DataRowからDefaultViewDataRowViewを取得します

状況は次のとおりです。WPFをにバインドする必要がありFixedPageますDataRowDataRowsバインディングは;に対して機能しません。彼らはに対して働きDataRowViewsます。私は何も知らず、何が入っているかを制御できないので、可能な限り最も一般的な方法でこれを行う必要がありDataRowます。

私が必要としているのDataRowViewは、与えられたのを取得できるようにすることDataRowです。Find()このメソッドはキーを取得するため使用できませんDefaultView。また、テーブルに主キーが設定される保証はありません。

誰かがこれを回避するための最良の方法について提案がありますか?