問題タブ [datatemplate]
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 ListBox 内の項目としての 3d 要素
DataTemplate が ListBoxItem を 3d 要素として定義する ListBox を XAML で使用できるかどうかを誰かが知っているかどうか疑問に思っています。次のようなもの:
この種のことを見た人はいますか?アドバイスはありますか?
どうもありがとう、bv
c# - 生成されたDataTemplateの背後にあるコードでのEventBinding
シナリオから始めましょう:
UserControl内にItemsControlがあります。このItemsControlには、コードビハインドで作成および追加される動的に作成されたDataTemplateがあります。コードビハインドでDataTemplateを作成する良い方法がないように思われるため、DataTemplateのxamlコードをプログラムで文字列に生成し、XamlReaderを使用してそこからDataTemplateオブジェクトを作成する必要がありました。
生成されたXAMLコードは次のようになり、実際に使用されます(アイテムは期待どおりにレンダリングされます)。
不思議に思うかもしれませんが、コントロールをレンダリングするためにXamlReaderがxmlns属性を必要とします。そうしないと、コードに到達したときに例外が発生します。
私の問題:
アイテムが期待どおりに表示され、データが正しくバインドされている間、バインドされたデータを再フォーマットする必要があるcustomConverterも、LostFocusイベントも正しく適用されません。エラーメッセージや警告が表示されず、コンバーターとイベントが呼び出されません。なぜ、どのようにこれを機能させることができるのか、誰か考えていますか?
アップデート:
この問題を解決するか、別のアプローチを試してみる必要があります。前回のテストでは、コンバーターをDataTemplateに直接追加しようとしましたが、うまくいきませんでした。生成されたコードは次のようになります。
何か案は?
アップデート2:
XamlReader.Load()がイベントをフックできないことがわかったので、Silverlightフォーラムでこのスレッドを参照してください
コンバーターは機能するはずですが、まだ見られない名前空間の問題があると思います。私は「単純な」ItemsControlアプローチでは選択肢がないので、ニーズを満たすための別の方法を探す時が来たと思います。
wpf - Application.xamlファイルでDataTemplateのイベントを処理するためのヘルプが必要です
私のアプリケーションには、いくつかのボタンがあるデータテンプレートがあります。ページごとに異なるアクションが必要なため、これらのボタンのハンドラーをApplication.xaml.vb / csファイルではなく現在のページ(多くのページでこのテンプレートを使用しています)で起動するようにします。
はっきりしているといいのですが。
wpf - WPF DataTemplate のプロパティを公開するには?
多くのページで使用するデータ テンプレートがあり、データ テンプレートにはいくつかのボタンが含まれています。これらのボタンの一部をトリガーで非表示にしたいと考えています (この DataTemplate を使用するページでこれらのボタンの IsEnabled プロパティを設定することを意味します)。
つまり、この DataTemplate を使用する ListBox から設定可能な DataTemplate の一部として、スタイル トリガー/セッターでプロパティ 'ButtonXIsEnabled'、'ButtonYIsEnabled' を設定したいと思います。
詳細についてはコメントを残してください。
どんな議論でも本当に感謝します!前もって感謝します。
wpf - DataTemplate WPF 内の外部プロパティ
シナリオ: ListBox があり、ListBoxItems には DataTemplate があります。私がやりたいことは、ContextMenu を DataTemplate に入れることです。問題は、ウィンドウ内の特定のプロパティに応じて、この ContextMenu ItemsSource を異なるものにしたいということです。私の最初の考えは、ItemsSource をウィンドウ内のプロパティにバインドするだけで、ItemsSource が返されるということでした。ただし、このプロパティに正しくバインドできないようです。これは、私が DataTemplate にいて、その結果、DataContext (正しい言葉だと思います) がその ListBoxItem のものであり、ウィンドウのものではないためだと思います。DataTemplate の内部にある ContextMenu を取得して、DataTemplate の外部のプロパティにバインドするにはどうすればよいですか。
c# - デフォルトの 'ToString()' DataTemplate の代わりに、デフォルトの空の DataTemplate を指定します
wpf アプリケーションのデフォルトの DataTemplate は、.ToString()
メソッドの結果を表示します。デフォルトの DataTemplate に何も表示されないアプリケーションを開発しています。
私はもう試した:
しかし、これはうまくいきません。アプリケーション内のすべてのクラス タイプに対して特定の DataTemplate を指定しなくても、これが可能かどうかは誰にもわかりませんか?
mvvm - MVVM + Datacontext + DataTemplate + Blend = 問題
現在、WPF プロジェクトで MVVM を使用していますが、すべてうまく機能しています。MasterViewModel の currentView プロパティを使用して、1 つのマスター ビューと多くの詳細ビューを管理しています。データ テンプレートを使用して、ビューをビューモデルにバインドします。実際、私のマスター ビューには、コンテンツ プロパティが CurrentView プロパティにバインドされているコンテンツ コントロールがあります。この currentview プロパティをビューモデルなどに設定すると、対応するテンプレートが呼び出されます。
私の問題は、これを使用すると、データテンプレートによって配置されるため、詳細ビューに明示的なデータコンテキストがないことです。そのため、blend では、ビューを開いてそのデザインを編集すると、ビューにバインドするデータがありません。データコンテキストを詳細ビューに設定すると、バインドできるすべてのデータがブレンドで表示されますが、実行時には、データテンプレートによって設定されたデータコンテキストが詳細ビューで設定されたデータコンテキストによって上書きされるため、実行時にデータがありません。
データテンプレートによって管理されるビューと Blend で表示できるデータコンテキストを使用して、適切な MVVM プロジェクトを作成する方法を知っている人はいますか?
ありがとう、