如何处理对不存在的实体的绑定?

时间:2011-09-25 22:52:06

标签: c# wpf silverlight xaml mvvm

我正在尝试了解在“新项目”页面上视图模型和页面控件之间的绑定是如何工作的。例如:

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 个答案:

答案 0 :(得分:1)

我可能先创建一个新的Transaction,然后打开只操作所述事务的对话框(传递构造函数并在属性中保存引用以进行绑定)。如果确认对话框,则可以将对象添加到集合中,如果取消该对象,则可以忽略该对象(如果创建为局部变量,则超出范围)。