問題タブ [datatemplateselector]

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

xaml - UWP ListView、最初と最後のアイテムの異なるアイテム テンプレート

ListView の最初と最後のアイテムに異なるアイテム テンプレートを選択するために、DataTemplateSelector を構築しようとしています。

私の DataTemplateSelector では、親 ListView を見つけようとし、そのチェック項目のインデックスに基づいて、正しいデータ テンプレートを選択します。

問題は、SelectTemplateCore() DependencyObject コンテナー オブジェクトの親が null であるため、親の ListView を取得できないことです。

アイテムの位置に基づいて異なるテンプレートを選択するにはどうすればよいですか?

私のDataTemplateSelector:

xaml のリストビュー:

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

wpf - DataTemplateSelector でアイテム スタイル テンプレートをオーバーライドする

Theme プロパティを設定する ListViewItem に Style があります

ただし、ListView を使用している場合の 1 つで、DataTemplateSelector を使用して、使用するテンプレートを決定したいと考えています。

このように適用されます

ただし、アイテムのスタイルが引き継がれ、そのスタイルが ListView 内のすべてのアイテムに適用されているように見えます。同様の問題があるこの質問を見つけましたが、解決策はアイテムスタイルのテンプレートをまったく使用していません。私はそれを維持する必要があります。

そのListViewのListViewItemsのスタイルを変更して、ContentTemplateSelectorをいじりました

ただし、代わりに他のスタイルのテンプレートが使用されます。テンプレートを無効にしようとすると、何も表示されません!

スタイルの残りの部分を維持しながら、特定の ListView の ListViewItems のテンプレートを置き換える方法はありますか?

0 投票する
3 に答える
1237 参照

xaml - UWP - GridView:最後の項目の後に「追加」ボタンを追加する方法は?

私は GridView を使用して写真を表示し、ユーザーが新しいアイテムをフォームに追加できるようにするエレガントな方法を検索します。

  • フォームには多くのフィールドが含まれています。各 PivotItem がフォームのカテゴリを表すピボットに表示されます。
  • 一部のカテゴリには、1 つ以上の子アイテムが含まれます。これらは、マスター/詳細ページに表示されます。

写真のリストを表示する必要があるのはこのページです。写真はフォームの「サブ サブ アイテム」を表すため、CommandBar を使用して新しい写真を追加することはできません。しかし、写真を含む GridView の最後の項目の後に「追加」ボタンを使用したいと思います。

現時点では、部分的に機能するソリューションしか見つかりませんでした: ここに画像の説明を入力

XAML は次のとおりです。

StackPanel を使用しているため、3 枚の写真を表示すると [追加] ボタンが表示されなくなります...

=>これを行うより良い方法はありますか?または、代替手段が見えますか?私は DataTemplateSelector を介してこれを行うことを探していますが、追加ボタンを表示するために「false」オブジェクトを作成する必要があります...

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

xamarin - DataTemplateSelector を使用している場合、顧客のレンダラーでカスタム セルのバインディングを設定する場所は?

2 つの異なるセルを選択する DataTemplateSelector があります。Android では、このテンプレートは Android xml ファイルとして定義されているセルを選択します。2 つの異なるカラー サークルが表示され、色が正しいため、テンプレート セレクターが機能していることを確認できます。しかし、私のデータはバインドされておらず、その理由がわかりません。私はバインディングをどこかに設定していないと思いますが、どこで/どのようにそれを行うべきかわかりません。

これは、DataTemplateSelector を含む ListView を含む私のページです。ここで ItemsSource を設定しましたが、リスト項目のさまざまな部分のバインディングを設定したことはありません。それは私が何をすべきかわからないところです。

分離コード:

DataTemplateSelector

そして、私のカスタム ViewCells の 1 つの例です。これは私が間違っているところだと思いますが、その理由はわかりません。プロパティは作っているのですが、うまく設定する方法がわかりません。

助けてくれてありがとう :)

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

c# - DataTemplateSelector でグリッドを表示する方法

2 つのグリッドを含む ItemsControl の DataTemplate があります。2 番目のグリッドは折りたたまれており、ItemsControl のアイテムをクリックしたときに表示されるようにしたいと考えています。

XAML は次のとおりです。

ceControl が DataTemplateSelector で、MagazineSlotTemplate が上記のテンプレートの静的リソースを使用する DataTemplate であるコード ビハインドを次に示します。

コード ビハインドで 2 番目のグリッドを確認できますが、可視性を可視に設定すると可視になりますが、プロパティ IsVisisble が false であるため、グリッドが表示されません

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

wpf - 2 つの DataGridTemplateColumns で同じオブジェクトの 2 つの異なるプロパティに同じ DataTemplate を使用する

リソースには 2 つのデータ テンプレートがあり、それらから選択する DataTemplateSelector があります。

セレクターの分離コードは次のとおりです。

1 つの DataColumn (Name1 など) に MyTemplateSelector を使用する限り、問題なく動作します。しかし、私の DataGrid には、Name1 と Name2 の 2 つの文字列フィールドにバインドされる 2 つのテンプレート列があります。

私の質問は、バインディングに適切なパス (Name1 または Name2) を設定するにはどうすればよいですか (Name1OrName2 の代わりに、上記を参照)。ありがとうございました。