問題タブ [itemssource]

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

wpf - ItemsSource が設定された場合の TabItem のスタイリング

Itemssource を使用してコレクションが取り込まれた WPF Tabcontrol を使用しています。

今、私は App.xaml (または他のリソース ファイル) で TabItem スタイルを次のように設定したいと考えています。

..しかし、もちろん、ItemContainerStyle はコントロール テンプレートをオーバーライドします。

これら 2 つを組み合わせて、タブコントロールを動的にロードし、TabItems を希望どおりにスタイルできるようにするにはどうすればよいですか?

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

wpf - WPFから派生したComboBoxSelectedValuePathの問題

このアプリケーションには、ComboBoxリストなどのデータディクショナリとして機能する非常に大きなデータセットがあります。このデータは静的にキャッシュされ、2つの変数からキーオフされるため、ComboBoxから派生して公開されるコントロールを作成するのが賢明だと思いました。 DPとしての2つのキー。これらの2つのキーに適切な値がある場合、対応するデータディクショナリリストからComboBoxのItemsSourceを自動的に設定します。また、コンストラクターのSelectedValuePathとDisplayMemberPathをそれぞれCodeとDescriptionに自動的に設定します。

データディクショナリリストのItemsSource内のアイテムが常にどのように見えるかの例を次に示します。

Codeの値は常に4文字の長さですが、3文字だけバインドする必要がある場合もあります。したがって、Code3プロパティ。

ItemsSourceを設定するためのカスタムコンボボックス内のコードは次のようになります。

さて、私の問題は、XAMLのSelectedValuePathをCode3に変更すると、機能しないことです。SelectedValueにバインドすると、DataDictionaryItemから完全な4文字のコードが取得されます。SelectedValuePathが変更され、サイコロがない場合でも、SetItemsSourceを再実行してみました。

カスタムコンボボックスをウェイクアップさせ、XAMLでオーバーライドされた場合に提供されるSelectedValuePathを使用するために、私が何をする必要があるかを誰かが理解できますか?SelectedValueバインドされたビジネスオブジェクトのプロパティセッターの値を微調整することはオプションではありません。

XAMLがフォームでコンボボックスを検索する方法は次のとおりです。

編集:コードでスヌープを実行したところ、SelectedValuePathがコードであると表示されます...Code3に設定されていないようです...Zuh?

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

.net - WPF listBox テンプレートの作成方法

listBox.ItemsSource を使用してデータが添付された多くの listBox を使用するアプリケーションがあります。問題は、[namespace].[class_name] のようなエントリが作成されることです。

エントリを次のように置き換えるテンプレートを作成するにはどうすればよいですか。クラスの「名前」フィールド?

すぐにご連絡をお待ちしております、MattheW

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

performance - ItemsControl.ItemsSourceMVVMのパフォーマンス

ItemsSourceをViewModelインスタンスのObeservableCollectionにバインドする(仮想化されていない)ItemsControlがあります。ここで、大量のModelインスタンスがロードされたら、すべてのViewModelコンポーネントをそのObservableCollectionに追加する必要があります。UIスレッドをハングさせずに大量のViewModelを追加するにはどうすればよいですか?

新しいアイテムが追加されるたびにItemsControlがそれ自体を更新する必要があり、レイアウトなどを何度も繰り返すため、UIスレッドがハングすると思います。

  • バインディングを一時停止してすべてのアイテムを追加してから再開する必要がありますか?もしそうなら、どのように?
  • ObservableCollectionをオーバーライドしてAddRangeを実装し、複数のアイテムを追加するために1つのCollectionChangedイベントのみが発生するようにする必要がありますか?または、コレクション全体を置き換えるだけですか?
  • または、各アイテムを個別に追加してDispatcher.Invokeを個別に呼び出す方がよいでしょうか。だから私は頻繁にブロックを解除します。

仮想化できない大きな動的リストをどのように処理しますか?

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

.net - app.config に ItemsControl (ListBox、ComboBox) の ItemsSource を格納する方法は?

多くの調査と試行錯誤の末、ListBox と ComboBox の項目を app.Config に格納する方法を見つけました。Net 2.0 構成クラスに関する一連の記事を書いた Jon Rista に深く感謝しています。3 つの文字列を挿入するだけで、必要なすべてのコードを生成する (大きな!) コード スニペットを作成しました。

楽しみ!

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

wpf - オブジェクトのリストをWPFListViewにバインドする

WPFアプリケーションのListViewコントロールにバインドするオブジェクトのリストがあります。オブジェクトにはすでにDataTemplateがあるため、それを定義する必要はありません。
オブジェクトのリストは、コードビハインドファイルのプロパティですlist<object>
。プログラムで1つのオブジェクトを追加すると、正常に表示されます。しかし、ListBoxのItemSourceをオブジェクトのリストにバインドしようとすると、何も表示されません。私は次のバインディングを使用しています:

ここで、バインドしようとしているプロパティの名前はポートフォリオであり、親ウィンドウに存在します

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

datatable - ItemsSource としての DataTable の WPF BindingListCollectionView から ListCollectionView へ

ItemsSource として DataTable を持つ ListView でカスタム並べ替えを行いたい:

そして、これは私の並べ替え関数の最初の行です:

2 行目は、次のような execption をスローします。

「System.Windows.Data.BindingListCollectionView」を「System.Windows.Data.ListCollectionView」にキャストできません

誰にも解決策はありますか?Thx 4つの答え

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

wpf - データグリッドitemssourceのMVVMプロパティ

itemsSourceがコンバーターを使用するマルチコンバーターにバインドされているデータグリッドがあります。

コンボボックスまたはdatepickerの値が変更されるたびに、グリッドのitemsSourceが更新されるため、これは適切です。

私が今抱えている問題は、ViewModelで、データグリッドのItemSourceにアクセスして、リストのアイテムを削除するか、新しいアイテムを追加できるようにしたいということです。

このように設定した場合、itemssourceにアクセスするにはどうすればよいですか?

どうもありがとう。

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

c# - WPF メニューを ItemsSource にバインドする際の問題

派生オブジェクトのリストにバインドすることで、XAML またはコードで手動でメニューを作成する必要がないようにしたいと考えていICommandます。MenuItemただし、結果のメニューに 2 つのレベルのメニュー項目がある (つまり、それぞれが に含まれているMenuItem)という問題が少し発生しています。

代替テキスト

私の推測では、これは WPF がバインディング用に自動的に を生成しているために発生していると思われますが、MenuItem実際に使用している「ビューアー」は既にですMenuItem(から派生していMenuItemます):

(ItemContainerStyleSelector はhttp://bea.stollnitz.com/blog/?p=23Separatorからのもので、バインドされたソース内に要素を含めることができます。)

したがって、メニューは のコレクションにバインドされ、ICommand各アイテムCommandParameterは同じグローバル ターゲットに設定されます (たまたまコレクションですが、それは重要ではありません)。

私の質問は、WPF が各項目を自動的にラップしないようにバインドできる方法はありますMenuItemか?

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

wpf - DataTemplatesのバインド(または別のアプローチ)

WPFでコンテンツを動的に生成しようとしたり、データをバインドした後、問題が発生します。

次のシナリオがあります。TabControl-DataTemplateを介して動的に生成されたTabItems-TabItems内に、バインドしたいDataTemplateによって生成された動的コンテンツ(ListBox)があります。

コードは次のとおりです。

:: TabControl

::TabItemを生成するためのTabControlのテンプレート

::各TabItem内のListBoxのテンプレート

したがって、ループ内のコードでこれを実行してタブアイテムを作成しようとすると、次のようになります。

ここで、「プラグイン」は列挙可能です

ListBoxは制限されていません。また、TabItem内のListBoxを見つけてItemSourceプロパティを設定しようとしましたが、まったく成功しませんでした。

それ、どうやったら出来るの?