Цените ваше время, читая мой вопрос.
Я разрабатываю настольное приложение для Windows с использованием WPF, C #, sqlite3 и nhibernate.Я пытаюсь использовать шаблон MVVM.В моей модели у меня есть класс безопасности и торговый класс.К ценной бумаге может быть прикреплено несколько сделок, но сделка может быть привязана только к одной ценной бумаге.Я должен отобразить все сделки в таблице данных на одной странице WPF, а также отобразить все ценные бумаги с детализацией их сделок на другой странице (например, для каждой ценной бумаги при нажатии будет отображаться знак «+», показывающий сделки для этой ценной бумаги).).
//model
public class Security
{
private decimal _securityid;
private string _name;
private ObservableCollection<Trade> _tradelist;
public Security() {}
<<public get set for all the 3 properties above>>
}
public class Trade
{
private decimal _tradeid;
private decimal _securityid;
private string _side;
private decimal _quantity;
public Trade (){}
<<public get set for all the properties above>>
}
//viewmodel
public class SecurityVM
{
private ObservableCollection<Security> _securityList;
public ObservableCollection<Security> SecurityList
{
get {return _securityList;}
set {_securityList = value;}
}
public SecurityVM()
{
//get data from database into the security list object. Since the mapping between the security and trade is set in nhibernate
//it also get the trades associated with each security and populates the trades for each line
_securityList = new ObservableCollection<Security>(GetAllSecurities());
}
}
public class TradeVM
{
private ObservableCollection<Trade> _tradeList;
public ObservableCollection<Trade> TradeList
{
get {return _tradeList;}
set {_tradeList = value;}
}
public TradeVM()
{
//getting all the trades from the database to display them independently.
_tradeList = new ObservableCollection<Security>(GetAllTrades));
}
}
Так что теперь у меня есть 2 xaml страницы.Один отображает список сделок, а другой - список ценных бумаг с возможностью расширения каждой ценной бумаги для просмотра сделок по ней.Когда я вставляю дополнительные сделки из внешнего интерфейса в базу данных, я вызываю метод для заполнения наблюдаемой коллекции сделок, и страница сделок обновляется дополнительными сделками.Как можно автоматически обновлять сделки, которые отображаются для каждой ценной бумаги?Я не в состоянии понять это.Любая помощь будет очень признательна.
Еще раз спасибо за ваше время
С уважением