私はシンプルなデータブラウジングコマンドで単純なMVVM WPFアプリケーションを実装しています。WPF ListBoxで新しいリストを設定するにはどうすればいいですか?
WHERE句
<TextBox Grid.Column="2" Grid.Row="6" Margin="0,5,10,5" Name="textBoxWhereClause" />
者を挿入するテキストボックスがあるだけでなく、リストボックス
<ListBox x:Name="listBoxPersons" ItemsSource="{Binding Path=Persons}" SelectedIndex="{Binding Path=SelectedPerson, Mode=OneWayToSource}" Grid.Column="1" Grid.Row="0" Grid.ColumnSpan="2" Margin="0,10,10,5" IsSynchronizedWithCurrentItem="True">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Path=Name, UpdateSourceTrigger=PropertyChanged}" />
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
とXAMLウィンドウがありますがのObservableCollectionです。私は人のための簡単な追加/削除/変更コマンドを実装しました。これは機能します。
質問:ユーザーが新しいクエリを実行して完全に新しいコレクションを作成した場合、どうすればいいですか?新しいコレクションをどのようにリストボックスに動的にバインドできますか?
私は初心者で無力です。
ご協力いただきありがとうございます。
Persons Collectionをクリアし、空のコレクションを新しい結果で埋めることができます。 – BigL
はい、本当にありがとうございますが、テーブルには約5万人がいます。これによりパフォーマンスが低下する可能性があります。 – PeterP
Haris Hassanは、バインドされたコレクションを新しくロードしたコレクションに簡単に変更できると答えました。そして、あなたのパフォーマンスに対処するために、別のタスクで新しいコレクションをバックグラウンドで読み込むことができます。 – BigL