将ObservableCollection绑定到数据库

时间:2011-08-16 11:45:17

标签: c# wpf binding

我有以下课程:

[Table]
public class myClass
{
    [Column(IsPrimaryKey = true)]
    public int ID { get; set; }

    [Column]
    public string Type { get; set; }
}

以下代码是为了从我的数据库表“myClass”加载数据:

static public readonly ObservableCollection<myClass> items;
DataContext dataContext = new DataContext("Secret");

var ruleTable = dataContext.GetTable<myClass>();

IQueryable<Rule> custQuery = ruleTable.Select(tableName => tableName);
items = new ObservableCollection<myClass>(custQuery);

如何根据我的ObservableCollection

更新数据库

2 个答案:

答案 0 :(得分:0)

使用ItemTemplate或任何其他ItemsControl将项目绑定到ListBox。

<ListBox x:Name="myListBox">
    <ListBox.ItemTemplate>
        <DataTemplate>
            <StackPanel>
                <TextBlock Content="{Binding ID}"/>
                <TextBox Content="{Binding Type, Mode=TwoWay}"/>
            </StackPanel>
        </DataTemplate>
    <ListBox.ItemTemplate>
</ListBox>

在代码后面设置datacontext:

myListBox.DataContext = items;

然后添加一个按钮,其中包含一个执行dataContext.SubmitChanges

的事件

答案 1 :(得分:0)

我在前面写的这篇代码项目文章中有一节详细介绍了从绑定的WPF数据网格执行数据库更新/删除/插入操作:

WPF DataGrid Practical Examples