問題タブ [attached-properties]

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

wpf - 添付プロパティのさまざまな用途は何ですか?

これまでのところ、WPFでの冒険で、AttachedPropertiesのさまざまな使用法を見てきましたが、さまざまな使用法のいくつかは何でしょうか。

GridやCanvasに見られるようなかなりありふれた使用法や、セッターなしでコレクションにバインドできる非常にクールなハックを見てきました。AttachedProperties用に他にどのようなアプリケーションを見つけましたか?(コードサンプルは本当に役に立ちました!)

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

wpf - 添付プロパティの問題

「Translate」という名前の添付プロパティがあります。プロパティを次のように設定します。

プロパティ変更イベントハンドラーでターゲット値を取得しましたが、nullです。しかし、私はそれをXAMLで設定しました。なぜnullなのですか?

ありがとう。

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

wpf - WPF:添付された動作は登録されていますが、呼び出されませんか?

私の最初の添付された動作を試してみてください: RichTextBox の TextSelection を ViewModel のプロパティにバインドしたい:

そのように私はそれをバインドします:

それが私のコードで、2 つの質問があります。

1) OnRichTextBoxSelectionPropertyChanged が呼び出されないのはなぜですか? 2) 質問を参照してください。このメソッドは一番下にあります: OnRichTextBoxGotSelectedText

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

wpf - DependencyPropertyの依存関係とPropertyCallbacks

この投稿の質問の中心は、いずれかのDPのプロパティコールバックが設定されるまでに、すべてのDPが設定されることを期待できるかどうかです。これは私が見ている行動ではないので、私はこれを尋ねます。

クラスには2つのDPがあり、どちらもXAMLで設定されています。

DayOfTheWeekColumnクラスでは、DPは今のところ次のように宣言されています。

OnDowIndexSetコールバックが実行されると、ActivityCollectionPropertyはnullのままですが、OnActivityCollectionSetコールバックが実行されると、DowIndexPropertyが評価されます。このユースケースを実現するには、両方のプロパティが必要です。OnActivityCollectionSetは次のとおりです。

これで機能しますが、コールバックが実行されるまでに両方のプロパティを設定するタイミングがわからない限り、私には脆弱です。OnDowIndexSetではなくOnActivityCollectionSetで両方のプロパティを使用できるようにする必要があるのはなぜですか?

乾杯、
ベリール

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

.net - 複雑な添付プロパティの動作

子のいずれかにアタッチされたプロパティを定義するオブジェクト(デコレータ)があります。

これまでのところ、リモートオブジェクトの添付プロパティの設定/取得に問題はありません。

ただし、このアタッチされたプロパティにOnSetCallbackを設定しているので、設定ロジックは、この要素が子であるデコレータ(MyClass)への参照が必要です。

コールバックのタイプシグニチャー:

void Callback(DependencyObject d, DependencyPropertyChagnedEventArgs args)

  • dアタッチされたプロパティが設定されているオブジェクトです。
  • args.NewValueargs.OldValueはプロパティの実際の値です。

アタッチされたプロパティが属する包含要素への参照を収集する最良の方法は何ですか?

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

.net - DataTriggerのWPFカスタム添付プロパティ

私はここSOで同様の質問を調べましたが、解決策を得ることができなかったので、これが私の取引です:

**私は次のクラスを持っています:**

あなたが推測できるように、それはSecurity:ControlSecurity.IsSecuredすべてに追加されますFrameworkElement

注:Security:これらすべてのクラスが含まれる名前空間を指します(を含むControlSecurity

そこで、コントロールの1つにこのデータテンプレートとスタイルを実装しました。

ここでの問題は、DataTrigger:のバインディングにあります。

アイデアは、親ボタンを見つけて、Security:ControlSecurity.IsSecured定義した添付プロパティにバインドしたいということです。

このバインディングで約10種類のバリエーションを試しましたが、次のようなバインディングエラーが発生し続けます。

私はこの時点で困惑しており、そこにあるWPFの達人からの洞察が欲しいです。

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

wpf - 無関係な添付プロパティに情報を保存するのはコードの匂いですか?

How Do I: Use Attached Properties to Store Extra Data in WPFという「ハウツー」タイプの WPF ビデオを見ていましたが、2 つの情報を 1 つのコントロールに関連付ける場合の対処方法が説明されていました。1 つの情報を入れたい場合は、Tag プロパティを使用するように言われます。

けっこうだ。

しかし、彼らは、「たとえば整数などの 2 番目のデータを保存したい場合はどうなるでしょうか?」と言います。彼らによると、解決策は未使用の添付プロパティを使用することです。

彼らはそれがグリッドにあるので問題ないと言います! 私は「ブレ!」と言います。これは非常に厄介で、読むとかなり誤解を招くと思います。これは一般的な方法ですか?

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

c# - カスタム WPF EndLineCap、StartLineCap & LineJoin、または新しい添付プロパティ

追加/カスタムの EndLineCap、StartLineCap、および LineJoin 属性を実装する方法を誰かが知っているかどうか疑問に思っていますか?

つまり、 LineJoin="Round" が必要ですが、角度の広い側だけでなく、角度の両側が滑らかである必要があります。

また、単に Rounded EndLineCap と StartLineCap の代わりに、両端にボールが必要です (たとえば、直径が線の幅の 2 倍である両端の円)。

カスタム アイテムを追加する代わりに、添付プロパティを使用してこれを実現できるかもしれませんが、どこから始めればよいかわかりません。

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

wpf - タイプ デリゲートの DependencyProperty

Func<bool>ビヘイビアーが呼び出されたときにタイプのデリゲートを実行するために使用されるアタッチされたビヘイビアーを作成しました。以下は、依存プロパティの定義です。

期待どおりに動作していますが、XAML で次のエラーが発生し、デザイナーが読み込まれません。

プロパティ 'SendToDetailBehavior' が見つからないか、タイプ 'SortableListView' に対してシリアル化できません

以下に xaml があります。

たとえば、依存関係プロパティの基になる型をに変更するとbool、エラーはなくなります。

私が言ったように、添付の動作は機能していますが、デザイナーだけが爆発します。これに関するドキュメントを探しましたが、空になりました。ここにいる誰かが何らかの洞察を持っていることを願っています。

ありがとう、BDN

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

wpf - Wpf スタイルと添付プロパティ

私は振る舞いをいじっていて、興味深い問題に遭遇しました。これが私の行動です:

次のようにスタイルを設定すると、これはうまく機能します。

しかし、これを抽象クラスに入れると

スタイル宣言は、「値を null にすることはできません。プロパティ名: プロパティ」でクラッシュします。

基本クラスで IsEnabled コードを使用する必要があるのは素晴らしいことです。

ありがとう、