問題タブ [routed-events]

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 投票する
2 に答える
1549 参照

wpf - このコードで FrameworkElement.SizeChanged が発生しないのはなぜですか

ドキュメントによると、「(FrameworkElement.SizeChanged) ActualHeight または ActualWidth プロパティのいずれかがこの要素の値を変更したときに発生します。」

次のテスト メソッドを実行すると、Measure と Arrange を呼び出した後に Rectangle の ActualWidth と ActualHeight が更新されますが、SizeChanged RoutedEvent は発生しません。

SizeChanged が発生しない理由を説明できる人はいますか?
上げるように設定する方法はありますか?


解決

HB の静的クラスでスリップすると、このテストはパスします。

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

c# - Button_Click の WPF トンネリング

これは私の最初の質問なので、簡単にお願いします:)

私は WPF とデスクトップ ベースのアプリケーションを初めて使用し、イベント処理を勉強しています。バブリングとトンネリングを行ってみると、Button_Click でトンネリングを使用する方法を説明している例がどこにも見つかりません。

基本的に、ボタンをクリックすると、親コントロール (この場合はグリッド) が最初にイベントを処理し、Button_Click の実行を許可する前にいくつかのチェックを行う必要があります。私が抱えている問題は、Grid_PreviewMouseDown を使用してイベントをキャプチャできることですが、これはあいまいです! どのコントロールがハンドラーをトリガーしたかはわかりません(少なくとも私はそうは思いません)。

PreviewMouseDown がボタン クリックによってトリガーされたことを確認するにはどうすればよいですか? または: Button_Click をトンネリングする代替/より良い方法はありますか?

ありがとう

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

c# - selectionchangedイベントでのイベントバブリングを無効にする-WPF

リストビュー内にリストボックスがあります。それらの両方で私はselectionchangedイベントを持っています。子コントロールイベントを起動すると、親コントロールが自動的に起動します。私はこの行動を止める必要があります。ヒントはありますか?ありがとう!

-

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

wpf - コードビハインドを使用せずにダブルクリックイベントを処理する方法はありますか?

私が大好きな添付の動作を使用してこれを行う方法を詳しく説明している記事を見ました。ただし、ダウンロードは機能せず、記事はかなり古い(2、3年)。

コードビハインドを使用せずにこのようなイベントを処理するための現在の方法は何ですか?MVVM固有のものはありますか?

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

c# - Silverlight 3 のルーティング イベント?

コントロール内に、コントロール内にコントロールがあります。

そのようです..

QuizMaster -> 質問 -> 回答 -> ラジオボタン

回答の 1 つがチェックされたら、AskNextQuestion() という Quizmaster の関数を実行します。

それ、どうやったら出来るの?

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

wpf - UserControl での WPF ルーティング イベント処理

ボタンを含む WPF UserControl があります。ボタンを含む WPF ウィンドウもあります。UserControl と Window の両方で、XAML に次の行を配置します。

「OnPreviewMouseLeftButtonDown」では、args.Source を表示するデバッグ プリントを配置しました。

ウィンドウ内のボタンをクリックすると、そのボタンが EventArgs ソースとして取得されます。ただし、UserControl 内のボタン (これもウィンドウ内にあるため、テストできますが、同じウィンドウではありません) をクリックすると、UserControl が EventArgs ソースとして取得されます。

UserControl の周りに (snoop を使用して) デコレータがあるかどうかを確認するのにうんざりしましたが、それは簡単に見えます。

WPF の UserControl の何が特別なのか理解できないため、正しい送信者を取得できません。誰かが私に何が欠けているのか説明してもらえますか?

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

c# - RoutedEvent のカスタム イベント ハンドラーの作成

指定されたルーティング イベント識別子。

リフレクションを使用してそのイベントのハンドラーを作成することは可能ですか?? (もちろん、ハンドラー内にいくつかのコードを追加します)。

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

wpf - ポップアップからルーティングされたイベント/コマンドをリッスンする

ポップアップを動的に作成するコントロールがあります。

ポップアップには、元のコントロールで反応したい、ルーティングされたイベント/コマンドを起動するコントロールが含まれています。元のコントロールは、ポップアップの配置ターゲットとして設定されます。

元のコントロールがバブル イベントを受け取ると思いますか? 別のビジュアル ツリーにあることはわかっていますが、プレースメント ターゲットに提供されるかどうかは疑問でした。私のコードからはそうではないようです。

誰でもこの状況を処理する方法を提案できますか? 別のビジュアル ツリー内のイベントへの応答。ポップアップのルートに配置され、元のビジュアル ツリーへの「ブリッジ」として機能するコントロールを記述できるかどうか疑問に思っていました。

どうもありがとう、

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

wcf-ria-services - WCFRIAサービス/RaiseDataMemberChangingをインターセプトまたはサブスクライブする

したがって、ルーティングされたイベントの概念は初めてですが、RaiseDataMemberChanging / RaiseDataMemberChangedメッセージを介してフィールドが変更されると、メッセージがどこにでも飛んでいることを知っています。

簡単な質問は、ルーティングされたメッセージをどのように「聞く」かです。

私のビューモデルは、MVVMの正しい問題で、テーブルの階層の奥深くで、フィールドが更新されているというメッセージをインターセプトしたいと思います。子(日付範囲)で変更が発生した場合、その日付範囲の変更には、トップダウンで機能するビジネスロジックが関連付けられています。

部分的なメソッドを使用して、変更イベントと変更イベント中にコードを挿入できることは知っていますが、設計(1対1の関係)は、子のコンテキストでの子への変更が親を参照しないことを意味します(親には子への1対1の参照がありますが、子には親への参照がありません)。

はい、子から親への参照を追加できます(親に1対1の関係と、1対多の関係の両方を持たせる)が、エンティティの作成中に問題が発生します-親は前に存在する必要があります子エンティティが存在し、親への参照が存在する前に子エンティティが存在する必要があります。この設計では、親と子を挿入してから子を更新する必要があります。これにより、最初の作成プロセス中にWCFRIAサービスが混乱します。

長い説明で申し訳ありませんが、コメントを気にする人にとってこれがすべて理にかなっているのであれば、デザインの変更も検討します。

任意の入力をいただければ幸いです。