相关疑难解决方法(0)

如何使用"确定/取消"按钮为数据绑定WPF对话框设计支持数据类型?

我在Microsoft Sql CE中创建了一个表,用于保存一些数据.我已经通过SqlMetal生成了一个ORM,并且我将数据源拉入了我的WPF项目.

我想创建一个简单的WPF表单,可以通过ORM生成的类来编辑表中的记录.我希望这个表单支持典型的OK/Cancel语义.我已经在我认为是典型的时尚中创建了表单,在相应的字段上使用TwoWay数据绑定来绑定来自ORM的对象的实例.例如,给定ORM中具有属性"TaskName"的对象,我在WPF表单中包含以下内容:

<Label Grid.Column="0" Grid.Row="0" >
    Name:
</Label>
<TextBox Name="txtName" Grid.Column="1" Grid.Row="0" 
         Text="{Binding TaskName, Mode=TwoWay}" AcceptsReturn="False"
         MaxLines="1" />
Run Code Online (Sandbox Code Playgroud)

这与代码中的DataContext赋值相结合:

var newRow = new OrmGeneratedClass();
// Populate default values on newRow, e.g.    
detailWindow.DataContext = newRow;
detailWindow.ShowDialog();
Run Code Online (Sandbox Code Playgroud)

可以合理地创建新行.通过表单进行的所有更改都会立即反映在底层的OrmGeneratedClass中.问题是,如果例如OrmGeneratedClass填充了先前保存的值,则不会立即支持取消更改.

对于这种情况,什么是好的设计,或者在我达到这一点之前我是否设计错了? 我是WPF和Sql Server数据源/ ORM集成方面的新手.(这是我用来学习这两种技术的个人项目.)

我有几个想法,并将他们放在答案中

data-binding wpf sql-server-ce linq-to-sql

3
推荐指数
1
解决办法
760
查看次数

标签 统计

data-binding ×1

linq-to-sql ×1

sql-server-ce ×1

wpf ×1