Как мне справиться с привязкой к сущности, которая не существует? - PullRequest
0 голосов
/ 26 сентября 2011

Я пытаюсь понять, как работает привязка между моделью представления и элементами управления страницы, когда они находятся на странице «Новый элемент».Например:

TransactionView.xaml.cs

public TransactionsView()
{
    InitializeComponent();
    this.DataContext = App.ViewModel;
}

Если у меня есть список транзакций, я бы сделал что-то вроде этого, где AllTransactions имеетвведите ObservableCollection.

<ListBox Margin="12,15,12,0" Height="Auto" x:Name="lb_Transactions"
    HorizontalAlignment="Stretch" Grid.Row="2" Grid.ColumnSpan="2" 
    ItemsSource="{Binding AllTransactions}" 
    ItemTemplate="{StaticResource TransListDataTemplate}">
</ListBox>

Что происходит, когда у меня есть страница «Новая транзакция», которая содержит простую форму, которая содержит элементы управления вводом для пользователя для ввода текста.Когда пользователь нажимает кнопку «Сохранить», я создаю новый объект Transaction, заполняю его, используя данные из формы, и добавляю его, используя App.ViewModel.SaveTransaction().

Что я должен связать элементы управления в пользовательском интерфейсе наNew форма для?

1 Ответ

1 голос
/ 26 сентября 2011

Я бы, вероятно, сначала создал бы новый Transaction, а затем открыл бы диалоговое окно, которое манипулирует только указанной транзакцией (передайте конструктор и сохраните ссылку в свойстве для привязки). Если диалог подтвержден, объект можно добавить в коллекцию, если он отменен, объект можно просто проигнорировать (и выйти из области видимости, если он создан как локальная переменная).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...