問題タブ [attachedbehaviors]
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.
c# - 匿名デリゲートによるイベントのサブスクリプション解除
私は Resharper 5.1 コード分析を何度も使用しています。
「匿名デリゲートによるイベントのサブスクリプション解除」
このことをどのように修正または最適化できますか
wpf - WPF/WP7 Attached Behaviors - 関連付けられたオブジェクトのイベントを発生させる前に実行する
私は、WPF/WP7 Silverlight でアタッチされたビヘイビアーについて学ぼうとしていますが、誰かが検討できるかどうか疑問に思った概念的な障害に直面しました。
私が作成しようとしている機能の例は次のとおりです: ユーザーが Click ハンドラーがナビゲーションをトリガーするボタン (つまり、NavigationContext.Navigate()) をクリックすると、ナビゲーションが実際に発生する前に、ボタンでアニメーションが発生します。不透明度を 1 から 0 に減らします (「フェードアウト」効果)。
したがって、順番に:
- ユーザーがボタンをクリックする
- ボタンはアニメーションを実行します
- ナビゲーションが発生します
簡単ですよね?次のようなアタッチされた動作を作成しました。
ボタンがあるページの .xaml.cs にナビゲーションをトリガーする Click ハンドラーが含まれていない場合、これは明らかに正常に機能しますが、それを接続すると、ナビゲーションが発生する前にアニメーションが完了しません。もちろん、これがなぜなのかは理解していますが、これを達成する方法があり、ひどいデザインではないという素晴らしい特性も示しているのではないかと考えています.
一見関連しているこのSOスレッドを見つけましたが、受け入れられた答えは本当にこれを行う唯一の方法ですか?
ご協力いただきありがとうございます。
編集: たまたま WP7 を持っていて、これを理解しようと必死になっている場合、Reddit リーダー アプリ「Baconit」は、ストーリーのタイトルをクリックしたときに、私が興味を持っているものと同様の動作を示します。
wpf - IsDisabled 添付プロパティ
「IsDisabled」のような既知のプロパティにプロパティをアタッチするにはどうすればよいですか? たとえば、コントロールが無効になっているときに、別のプロパティが引き継いでいくつかのことを変更したいと考えています。
wpf - コマンド動作が付加されたツリービュー イベント
ACB ( http://marlongrech.wordpress.com/2008/12/04/attachedcommandbehavior-aka-acb/ )を使用してツリービューでイベントを処理したい。
XAML ファイルのバインディングに行き詰まっています。イベントは発生しますが、ストラテジーが null であるため、ACB ライブラリで null 参照例外が発生し続けます。
XAML ファイルに以下を追加しました (抜粋):
そして、私が追加したViewmodelで:
誰がバインディングを手伝ってくれますか?
よろしく、
ミシェル
c# - MouseDragElementBehavior のドラッグ イベントを処理する MVVM
この質問は何をすべきかを言葉で教えてくれますが、コードの書き方がわかりません。:)
私はこれをしたい:
しかし、他の質問が概説しているように、 EventTrigger は機能しません...ではなく でDragFinished
イベントを見つけたいからだと思います。あれは正しいですか?SomeUIElement
MouseDragElementBehavior
だから私がやりたいことは次のとおりだと思います:
- から継承する振る舞いを書く
MouseDragElementBehavior
OnAttached
メソッドをオーバーライドする- イベントにサブスクライブし
DragFinished
ます...しかし、このビットを実行するためのコードがわかりません。
助けてください!:)
c# - トリガーのアタッチされた動作によりビルドエラーが発生する
コントロールテンプレートを使用したスタイルがあり、コンパイルに問題があります。アタッチされた動作をトリガーしようとしています。コントロールテンプレートトリガーに入れると正常に動作しますが、テキストボックストリガーに入れると、次のようなビルドエラーが発生します。
タイプ「TextBoxBehavior」で静的メンバー「SelectAllProperty」が見つかりません
これが私のコードです:
一方がビルドエラーを出し、もう一方がエラーを出さない理由について何か考えはありますか?
c# - WPF DataGrid でのドラッグ ドロップ行の動作
行を並べ替えるための添付の動作を作成しようとしていますDrag & Drop
私はいくつかの解決策を見つけ(Stackoverflowでグーグルで)、それらを使用して動作を作ろうとしています... Hordcodenet Webサイトから例を取りました(今はリンクがありません)
コード
ヘルパー クラス
/// /// 一般的な UI 関連のヘルパー メソッド。/// public static class UIHelpers {
}
OnMouseLeftButtonDown
問題は、行を押してドラッグしてもイベントが呼び出されないことです...しかしOnMouseLeftButtonUp
、その後呼び出されます....
これを行う方法はありませんか....
私は方法を見つけることができないようです
c# - WPFDataGridでの一般的なDragDropの動作
コレクションを取得するBehaviorDragDrop Beahviorを作成しました(ObservableCollection、LIstのようなIListの実装)
そして、その動作中のアルゴリズム...
しかし、 (Xamlバインディングで)CollectionViewSource.Viewを使用すると、動作が失敗します。
この動作を一般的にするにはどうすればよいですか(DataGridに接続されているデータソースのタイプに依存しないように)
IListインターフェースのメソッドを次のように使用しているので、それも可能ですか?
c# - Tab キーを押して ListBox に新しい項目を追加する
ListBox ItemTemplate のカスタム DataTemplate を持つ WPF ListBox があります (各項目には一連のコントロールがあります。つまり、テキスト ボックスと日付ピッカー)。ユーザーが PreviewKeyDown イベントのイベント ハンドラーで ICommand を実行できるようにする Behavior を最後の DatePicker にアタッチしました。
これは、ユーザーが ListBoxItem 内のコントロールを TAB で移動し、最後のコントロールに移動してもう一度 TAB を押すと、新しい ListBoxItem が ListBox に追加されるという考え方です。フォーカスは、次の ListBoxItem の最初のコントロールに移動します。ListBox に既に 2 つの項目があり、最初の項目をタブで移動している場合、私のソリューションは正常に機能します。ListBox に項目が 1 つしかなく、最後のコントロールに到達すると、新しい ListBoxItem が (予想どおり) 追加されますが、フォーカスは ListBox を超えて次の親コントロールに移動します。
Behavior コードが呼び出され、ICommand が呼び出されるようなものですが、新しい ListBoxItem が追加されるのを待たずに TAB イベントが続行されます。
助言がありますか?
私の行動(ZBehaviorBaseは「より良い」クリーンアップを可能にする単なるクラスです):
XAML:
INSIDE "LineTemplate":
コマンドの「実行」メソッドで行われる唯一のことは、ListBox の ItemsSource であるコレクションにオブジェクトが追加されることです。
wpf - WPFで30秒ごとにシェイクするボタンで画像をアニメーション化するにはどうすればよいですか?
スタイルやアニメーションを扱うのは苦手です。
ボタンのVisibilityがVisibility.Visibleに設定されている場合は常に、ボタンの唯一のコンテンツである画像を30秒ごとにシェイクするためのヘルプが得られることを望んでいました。
これは、ユーザーの注意を引き、ボタンをクリックするように促すことです。
私はすでにコントロールベンダーのスタイルを使用しているので、スタイルをいじる代わりに簡単に再利用できるように、これをImageに添付された動作として、または可能であればUIControlとして実行したいと思います。編集します。
これが私が使用した解決策であり、マークされた回答から導き出されたものです
これは、任意のSystem.Windows.Controls.Imageに適用できるアタッチされた動作です。
Xamlでの使用方法は次のとおりです。
アタッチされた動作の明確な定義については、System.Windows.Interactivity.Behaviorクラスの注釈を参照してください。ビヘイビアーには、オプションでアタッチされたプロパティを設定することもでき、非常に便利です。
添付プロパティの明確な定義については、MSDNの添付プロパティの概要を参照してください。アタッチされたプロパティは何でも実行でき、効果的な動作を引き起こすアクションをトリガーできるため、アタッチされた動作と見なすことができますが、技術的には、アタッチされたプロパティのままです。
アタッチされたプロパティは動作のように動作する可能性があるため、これらのタイプのアタッチされたプロパティをアタッチされた動作と呼ぶようになりましたが、実際には、動作から派生してアタッチされたプロパティのインタラクションに派生しない限り、実際にはアタッチされた動作ではありません。 。
WPF / Silverlightのほとんどのものと同様に、アタッチされた動作またはアタッチされたプロパティにブレンドは必要ありません。