我正在尝试了解在“新项目”页面上视图模型和页面控件之间的绑定是如何工作的。例如:
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
表单上的控件中的控件绑定到?
答案 0 :(得分:1)
我可能先创建一个新的Transaction
,然后打开只操作所述事务的对话框(传递构造函数并在属性中保存引用以进行绑定)。如果确认对话框,则可以将对象添加到集合中,如果取消该对象,则可以忽略该对象(如果创建为局部变量,则超出范围)。