問題タブ [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.
wpf - WPF とルーティング イベント
別のstackPanel内にあるstackPanel内にあるボタンを持つWPFウィンドウがあります
MouseDown イベントのボタンのイベント ハンドラーを作成しました。ボタンと親(スタックパネル)と親の親に対して、このeventHandlerを3回実行したい
イベント ハンドラーを 1 つだけ記述して、ルーティング イベントでそれを実現するにはどうすればよいでしょうか。イベント ハンドラ コードを繰り返したくありません。
ありがとう
c# - RoutedEvent または RoutedCommand を ViewModel にバブリングする
スタイルを使用してタブとしてレンダリングされ、関連するコンテンツを引き出してタブに表示する ViewModel のコレクションがあります。
これがTabControlです:
で、スタイルはこちら
ユーザーコントロールのインスタンスを作成し、TabViewModel の「コンテンツ」プロパティをそれに設定して、ユーザーコントロールが TabItem のコンテンツ領域に表示されるようにします。
私の質問は、TabViewModel の Content プロパティに追加された MyUserControl (またはそのサブ コントロール) を許可して、TabViewModel が処理するイベントを発生させたいということです。
誰も私がそれを行う方法を知っていますか?
RoutedEvents と RoutedCommands を使用して実験しましたが、100% 動作し、MVVM と互換性を持たせることはできませんでした。これは RoutedEvent または RoutedCommand で実行できると本当に思いますが、これを機能させることができないようです。
注: 関連する Prism 固有のコードの一部を削除しましたが、なぜそんなにばかげたことをするのか疑問に思っている方のために説明すると、それは Prism の RegionManager を使用して制御にとらわれないようにしようとしているためです。
wpf - WPFのトリガーとイベントの違いは何ですか?
WPFのトリガーとイベントの主な違いは何ですか?イベントを使用してすべての処理を実行できます。これはトリガーを介して実行できますが、なぜトリガーが必要なのですか?
.net - RoutedEventArgs と EventArgs
私は WPF/Silverlight を学習しており、MS vidcast で使用することが推奨されていることを見ましRoutedEventArgs
たEventArgs
。正確な理由は述べられていませんが。
特定のディスプレイ テクノロジ (Presenters/ViewModels) に結び付けられないように「ウィジェット」のインターフェイスを使用する win フォーム アプリを持っているので、IButton クリック イベントが今すぐ取る必要がある場合は、そうRoutedEventArgs
ではないと思います。便利です。
RoutedEventArgs
すべての場合に切り替える必要があるかどうか、およびその理由を誰かが説明してもらえますか?
余談ですが、私が説明しているインターフェイスウィジェットの使用について、他の誰かが経験/意見を持っていますか?
wpf - WPF MVVM ルーティング イベント
MV-VM とコマンド バインド (RelayCommand) については多くの議論がありますが、MV-VM パターンのハンドラーにバインドするルーティング イベントについてはあまり取り上げられていません。私は最善のアプローチが何であるかを見つけたいと思っています。
カスタム イベントと VM にバインドされたイベント ハンドラーを使用した RoutedEvent バインドの例を次に示します。
私の Vm では、これに似たイベント ハンドラーを使用します。
これは、コマンド バインディングの多くの例から得られた概念にすぎません。ルーティングされたイベントでこれを機能させるにはどうすればよいですか。
asp.net - Asp.Net Web ページ (ajax コードを含む) のテキストエリア外の Return キーを無効にする
一般的な Asp.Net フォームを持つ Asp.Net Web ページがあります。ページの外側の「境界線」 (つまり、メイン メニュー、ヘッダーなど) は、マスター ページを使用する通常の Asp.Net コードを使用して構築されます。そのページのコンテンツでは、jQuery を使用して動的フォームを表示し、サーバーにデータを送信します。
そのページでリターン キーを押すと、(多かれ少なかれ) ランダムなページにジャンプしますが、これはユーザーが期待するものではありません。;-)
いくつかのテキスト領域があり、ユーザーは改行を入力できる必要があります。それ以外の場合は、return キーを完全に無効にしても問題ありません。それを行うための防弾方法はありますか?
キープレスイベントをキャプチャして\ x13を無視するソリューションをWebで見つけましたが、実際には機能しません。ページがロードされたばかりである限り機能しますが、いくつかの要素をクリックするとすぐに、リターンキーは通常どおりに動作します。
どんなヒントでも大歓迎です!
アヒム
wpf - WPF でのコマンド バインディング メモリ リーク
RoutedUICommand への CommandBinding を持つユーザー コントロールを作成すると、メモリ リークが発生するのではないかと心配しています。
シナリオ:
RoutedUICommand を c クラスの static として使用し、コマンドを格納します。ユーザー コントロールに CommandBindings を実装します。ユーザー コントロールをメイン フォームに追加します。メイン フォームからユーザー コントロールを削除し、それへの参照を null に設定します。
コマンド バインディングの canExecute は引き続き起動します。UserControl への参照がないため、リークしています。フォームが閉じられた後も長時間発火し続けます。(停止するのを見たことがありません)ガベージコレクションを強制すると、収集されます(canExecuteの起動が停止します)
これを説明するテストプロジェクトがあります。メソッドを起動するオブジェクトのハッシュ コードを出力する canExecute に Console.WriteLine があります。新しいユーザー コントロールを追加するためのボタンと、それを削除するためのボタンがあります。
これは気にしなくていいのでしょうか?強制された場合、ユーザーコントロールは収集されます。これは、次のコレクションで収集されるということですか? アプリのパフォーマンスの低下に気づき、メモリ リークなどを追跡しています。多くの UI 要素を含む複雑なフォームがあり、レイアウトから削除すると、プロセッサとメモリ領域を使い果たしています。(多くのコマンドを使用します) ビジュアル ツリーから何かを削除すると、ルーティング イベントを受信できなくなると思いました。私は何が欠けていますか?
c# - WPF:追加情報を含むカスタムルーティングイベント
私は通常のWPFウィンドウを持っていますが、それを呼び出しましょう。このウィンドウには、アプリケーションのさまざまな要素の特定のイベントをログに記録TopLevel
する単純なものがあります。ListView
したがって、と呼ばれる一連のユーザーコントロールを含むが含まれているとしGrid
ます。それぞれに、パブリックプロパティとして関連付けられたオブジェクトがあります。これを、標準のチェックボックスと呼びましょう。TopLevel
Task
Task
Order
TopLevel
ここで、ユーザーがのチェックボックスをオンにするたびにイベントを受信したいのですが、イベントにはオブジェクトもTask
含まれている必要があるため、からイベントログに入れることができます。Order
TopLevel
それ、どうやったら出来るの?ルーティングされたイベントを使用したいと思いますが、チェックボックスをクリックして「検索」Order
して上向きに送信する方法がわかりませんTopLevel
。
c# - カスタム添付イベントのハンドラー
作成したカスタム添付イベントを使用しており、このイベントにハンドラーを追加しようとしています
ここに XAML コード
InitializeComponent で実行時にこのエラーが発生しました
'System.String' 型のオブジェクトは、'System.Windows.RoutedEventHandler' 型に変換できません。
このエラーが発生する理由を知っている人はいますか? ありがとう !
ここに私のイベントコード
DropEventArgs コード