1

私はそのようなモデルを持っています:

  • 会社
    • デパートメント
      • 人(氏名、国籍、新規)
      • 人(氏名、国籍、新規)
      • 人(氏名、国籍、新規)
      • 人(氏名、国籍、新規)
    • デパートメント
      • 人(氏名、国籍、新規)
      • 人(氏名、国籍、新規)
    • デパートメント
      • 人(氏名、国籍、新規)
      • 人(氏名、国籍、新規)
      • 人(氏名、国籍、新規)

その人の「新しい」プロパティはブール値です。会社の UI で各部門の新入社員数を動的にカウントするにはどうすればよいですか?

各会社の MainView の XAML に TextBox を設定しました。そのテキストボックスに、会社内の (すべての部門からの) 新しい人の総数を教えてほしいと思います。これどうやってするの?

4

2 に答える 2

0

最良の方法は、専用の部門ビューとビュー モデルを用意することです。部門ビュー モデルは、必要な値を反映Personするプロパティだけでなく、すべてのインスタンスを公開します。NewPersonCount

新しいビュー モデルの大まかな例を次に示します (INotifyPropertyChangedおよびすべてを省略)。

public class DepartmentViewModel
{
  public ObservableCollection<Person> People {get; set; }
  public int NewPeopleCount
  {
    get
    {
      return People.Where(p => p.New).Count();
    }
  }
}

部門ビューはそれにバインドされます (たとえば、NewPeopleCountに表示されますTextBox)。メイン ビューには、すべての部門への 1ListViewつまたはその他のItemsControlバインドがあり、部門ビューが表示されます。

于 2013-09-30T10:26:36.517 に答える