問題タブ [dependencyobject]
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.
silverlight - DependencyObjectsを作成するSilverlightValueConvertersをどのように単体テストしますか
enum
を取得してに変換するSilverlightValueConverterがありBrush
ます。この単純化された例のようなもの:
これを単体テストしたい場合は、機能しません。この例外が発生します:
これは、(NUnit)単体テストで、Silverlightアプリケーションを実行するときとは異なるCLRが読み込まれるためです。単体テストでUIをテストするべきではないことはわかっていますが、これはValueConverterをテストしているだけなので、有効なテストだと思います。
誰かがこれがテスト可能かどうか、そしてどのようにテスト可能か知っていますか?
c# - 直接コンテンツを「受け入れる」DependencyObject を作成する
空の XAML ファイルで使用する必要があるカスタム時間を作成しています。
カスタム クラスの BlackAndWhite ウィンドウ (DependencyObject および IDisposable から継承) が、ビジュアル スタジオから定義されたものを「ダイレクト コンテンツ」として受け入れることを効果的に許可するにはどうすればよいですか?
wpf - '[Unknown]' プロパティがパス '(0).(1)[1].(2)' の DependencyObject を指していないことを回避する方法は、wpf の例外です。
ボタンをクリックすると、ListBox
ItemsSource
コレクションが更新されます。DependencyObject
4 回または 5 回クリックすると正常に動作しますが、その後、'[Unknown]' プロパティがパス '(0).(1)[1].(2)'を指していないため、例外がスローされます。
私はそれをグーグルで検索し、その理由を見つけました。
「ElementControl は PrepareContainerForItemOverride をオーバーライドし、PrepareModel を呼び出して各アイテムの _modelContainer にメッシュを挿入します。後で ElementFlow.BuildTargetPropertyPath (ElementFlow.SelectItemCore -> LayoutBase.SelectElement -> ElementFlow.PrepareTemplateStoryboard 経由で呼び出されます) で、そのようなメッシュがこの例外は、メッシュが _modelContainer に挿入されていない場合に発生します。WPF は、ApplyTemplate で PrepareContainerForItemOverride を呼び出します。これは 1 回だけ行われます。後で追加されたアイテムは、そのように処理されることはありません。」
だから、それを克服するための解決策を教えてください。
wpf - 依存関係オブジェクトに応じて画像ソースが変更されない
次のように定義した依存関係オブジェクトに従って画像のスタイルを設定しようとしています。
MainWindow.xaml内:
リポジトリコードは次のようになります。
接続が成功した場合は、IsConnectをtrueに設定します。
しかし、何らかの理由で、このオブジェクトに応じて画像が変化していません...そして何が悪いのか考えてみてください。
silverlight - コンバーターでバインドしますか?
から継承するカスタム コンバーターを作成しようとしていますDependencyObject
が、機能しません。
コンバータ:
Xaml:
私は何かを見逃していますか?
silverlight-5.0 - SL5 のマークアップ拡張機能からターゲット オブジェクトを更新する方法は?
Silverlight 5 のマークアップ拡張機能でこのコードを試しています。
depObj は正しく提供されているようですが、depProp は DependencyProperty 型ではないようです (型は System.Reflection.PropertyInfo の System.String です)。キャストの結果は null になります。
depProp は正しい Text または Content プロパティを表していますが、それが DependencyProperty でないと値を設定できません。
任意の入力をいただければ幸いです。
シコ
c# - 他のスレッドによって作成されたオブジェクトを使用する
別のスレッドでウィンドウの背景を変更したいだけです。2つのプログラムがあります。1つは正しく動作し、もう1つはInvalidOperationExceptionをスローします。
正しいコード:
エラーコード:
これらのコードの違いは、エラーコードが子スレッドにImageBrushオブジェクトを作成することです。だから私の質問は次のとおりです:wpfプログラムでは、スレッドは独自のスレッドによって作成されたオブジェクトのみを使用できますか?返信ありがとうございます。
c# - 依存関係プロパティシステムを理解する
誰かがWPFの依存関係プロパティシステムを理解するのを手伝ってもらえますか?!私はちょうどこのようなことをしたかった:
クラスAに「A_property」というプロパティ(DP)があるとします。別のクラスBは、ビジネスロジックを表すだけであり、このクラスが「A_property」を監視できるようにしたかったのです。つまり、クラスBはクラスAのプロパティをサブスクライブする必要があります。誰かがとても親切なら、依存関係プロパティシステムを使用してそれを行う方法のサンプルを教えてください。
PS RoutedEventを使用して上記の問題を解決する方法は私には明らかですが、DPシステムは解決を単純化する必要があるように思われます。
前もって感謝します!
c# - Windows 8 アプリケーションの ViewModel での依存関係プロパティと INotifyPropertyChanged
空の C#/XAML Windows 8 アプリケーションを作成しました。簡単な XAML コードを追加します。
そして、C# 部分の単純なコード:
今私は実装したいViewModel
。私には2つの方法があります:
最初のアプローチは次のとおりです。
第二に、それは次のとおりです。
強制を使用できるため、最初の方法を好みます(Web 用および WP7 用の Silverlight には強制機能がありません.. WinRT も.. しかし、私はまだ探しており、希望しています)。残念ながら、最初のアプローチではOneTimeとして機能します。
ビューモデルを実装するためにMSが依存関係プロパティの使用を放棄した理由を誰かに説明してもらえますか?
silverlight - DependencyObject のバインディング コンテキスト
Silverlight 依存関係プロパティ システムの低レベルの詳細を理解しようとしています。
DependencyObject には明示的な DataContext プロパティや、親の概念さえないことがわかりました。
ただし、DependencyObject から派生する Behavior クラスでは、バインディングがそれ自体のバインディングのソースとしてアタッチされているものの DataContext を使用します。
私の質問は次のとおりです: DependencyObject からクラスを派生させて、バインディングのソースで使用する他のオブジェクトを何らかの方法で決定できますか? またはもっと明確に: Behavior クラスのようなものを実装するには?