問題タブ [itemcontainergenerator]

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 に答える
3908 参照

.net - WPF アイテム コンテナーのリサイクル

Canvasコンテナとして使用する場合、コンテナをリサイクルするカスタムを実装したいと考えていますItemsPanel。そのため、 andから派生しVirtualizingPanelてオーバーライドしました。私はこのように世代をやっています:ArrangeOverrideMeasureOverrideMeasureOverride

私が知らないのは、リサイクルの仕方です。私は次のようなものを試しました:

しかし、うまくいきません。これを行う方法はありますか?

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

c# - wpfはTreeViewItemコンテナを手動で生成します

実行時にTreeViewを作成しています。複数のノード(TreeViewItem)があり、それぞれに名前が付いています。最初は折りたたまれています。別のコンボボックスには、すべてのTreeViewItemの名前が表示されます。選択した名前に基づいてTreeViewItemを強調表示する必要があります。私は再帰関数を使用していて、次のようなTreeViewItemコンテナーを取得します。

でもそれは

parent.ItemContainerGenerator.Status = GeneratorStatus.NotStarted

折りたたまれたすべてのアイテム。それらのコンテナを手動で(拡張せずに)生成するにはどうすればよいですか?

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

wpf - WPFリストビュー-「視野」外のアイテムを選択します

ListViewを使用してリスト内のアイテムを表示しています。ユーザーは自分でアイテムを選択するか、いくつかの「事前選択キー」を使用して、指定された属性を持つアイテムを選択できます。

アイテムをチェックするために、私はそのようなものを使用します:

これは、実行時に表示されるアイテムに対して完全に機能します。ただし、表示されていないアイテムの場合、ContainerFromIndex()はnullを返します。これは仮想化と関係があり、リストは「視野」の上下の項目については知らないと聞きました。しかし、手動で選択したときに、リスト内の「視野」の外にあるアイテムを選択できるようになるのはなぜですか?

そして、「視野」の外でアイテムを選択するにはどうすればよいですか?それは可能だと思います。

助けてくれてありがとう、マークス

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

silverlight - 新しく作成されたアイテムの TreeViewItem を取得する

「childItem」を取得するには、次の方法よりも良い方法が必要です

何らかの理由で item.ItemGenerator.ContainerFromItem(child) が機能しません (作成されたばかりのアイテムが原因である必要があります)

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

wpf - ItemContainerGenerator.Status列挙はいつGeneratorStatus.Errorを返しますか?

ItemContainerGenerator.Status列挙はいつGeneratorStatus.ErrorWPFに戻りますか?誰かがそのような状況に遭遇したことがありますか?私は主にSilverlightで作業していて、GeneratorStatusそこには存在しないので、疑問に思っています。

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

c# - ItemContainerGenerator.itemChanged イベントからホストを見つける

私は C# 4.0、WPF に取り組んでいます。3 つの ListView があり、3 つのコントロールすべてに同じ ItemContainerGenerator_ItemsChanged" イベント ハンドラーがあります。したがって、私の問題はListView、イベント ハンドラー内からホストを見つけたいということです。

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

wpf - ListBox ItemContainerGenerator は、リストボックスに項目がある場合でも null を返します

スクロールバーが表示されなくなるまで、いくつかの項目を含むリストボックスがありますが、スクロールバーが表示されると、ItemContainerGenerator は null を返します。

いくつかのブログを読んだところ、スタックパネルの仮想化が原因である可能性があることがわかりました。それを無効にするとうまくいくかもしれませんが、私の場合、リストボックスが重くなりすぎて効率が悪くなります。

リストボックスのコードは次のとおりです。

これは null を返します。

ここで、firstContainer は最初のリストボックス要素である必要があります。itemsControl が正しく、firstContainer が null の場合に項目があることを確認しました。

もう 1 つ注目すべき点は、ItemsControl に 8 つのリストボックス項目があることです。ItemContainerGenerator のステータスは * Container Generated *と表示されます

ItemsContainer Thoughts を返さない理由がわかりません??

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

wpf - ScrollIntoViewはvirtualstackpannel(特にWPF DataGrid)で同期されていますか?

バインドされたコレクションのデータが更新された後、DataGrid のセルにフォーカスを当てると問題が発生します。たとえば、そのコレクションにフィルターを設定してから、保存された列の保存されたセルに再び焦点を合わせたいとします。

ScrollIntoView への呼び出しが同期されていると考えるのは本当ですか?それは、それを呼び出した後、目的の行とセルが作成され、フォーカスを設定できることを意味しますか? (繰り返しになりますが、 ScrollIntoView を呼び出した後、 Itemsgenerator が作業を終了し、目的のセルを確実に見つけることができると考えているのは本当ですか)

$

関連している

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

wpf - WPF ListView-コントロールがレンダリングされたアイテムを反復処理する準備ができたときのイベント?

ItemsSourceがアイテムViewModelクラスインスタンスのコレクションに設定されたWPFListViewコントロールがあります。ListViewには、カスタムコントロール階層を持つItemTemplateがあります。

ListViewが実際に表示され(まだ表示されていない場合)、すべてのアイテムがレイア​​ウトされている場合(つまり、安全に使用できる場合)に、ItemTemplateを介して生成されたコントロールに対して特定のことを行う必要がありますItemContainerGenerator.ContainerFromItem

サブスクライブするItemContainerGenerator.StatusChangedと、ステータスがに変わってGeneratorStatus.ContainersGeneratedもジェネレーターにアイテムがありません(?!?ところで)。実行時に既存のコントロールでItemsSourceが変更された場合でも、ListViewがアイテムにバインドされている実際のコントロールを反復処理する準備ができたら、どのように通知できますか?

これで、テンプレート内の実際のコントロールのイベントをサブスクライブできることはわかっていますが、すべてのアイテムコントロールがいつ作成されるかを知る必要があります。アイテムのビューモデルでスタフを実行しても、UI関連を実行する必要があるため、役に立ちません。アニメーションなど。

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

c# - Treeview ContainerFromItem は常に null を返します

この件に関するいくつかのスレッドを読みましたが、私がやろうとしていることをするものは何も見つかりませんでした. オブジェクトの階層セットにバインドされたツリービューがあります。これらの各オブジェクトは、マップ上のアイコンを表します。ユーザーがマップ上のアイコンの 1 つをクリックすると、ツリー ビューでアイテムを選択し、それにフォーカスして、スクロールして表示したいと考えています。マップ オブジェクトには、ツリービューにバインドされているオブジェクトのリストがあります。この例では、Thing はツリーにバインドされたオブジェクトのタイプです。

これまでのところ、何を試しても、コンテナーは常に null です。何か案は?