如何在windows phone 8的SQL Server CE数据库上使用双向绑定

本文关键字:数据库 绑定 CE Server windows phone SQL | 更新日期: 2023-09-27 18:17:30

我试图从这篇文章更新一些样本数据库:http://erikej.blogspot.com/2013/04/generate-windows-phone-8-local-database.html

在这篇文章之后,我有连接到数据库的所有东西。现在我希望能够编辑数据库列。

我想的是将textblock更改为textbox并将绑定更改为双向绑定但显然这是错误的,或者可能是不够的

Mr erikej让我打电话给submitchanges

,我这样做了,但似乎没有在应该调用的地方或时间调用它。

如有任何帮助,不胜感激。

Xaml

<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
        <phone:LongListSelector x:Name="MainLongListSelector" Margin="0,0,-12,0" >
            <phone:LongListSelector.ItemTemplate>
                <DataTemplate>
                  <StackPanel Margin="0,0,0,17">
                      <TextBlock Text="{Binding Zip}" TextWrapping="Wrap" Style="{StaticResource PhoneTextExtraLargeStyle}"/>
                      <TextBox Text="{Binding City,Mode=TwoWay}"  Margin="12,-6,12,0" TextChanged="TextBox_TextChanged"/>
                        <CheckBox IsChecked="{Binding IsProvince,Mode=TwoWay,UpdateSourceTrigger=Default}"/>
                    </StackPanel>
                </DataTemplate>
            </phone:LongListSelector.ItemTemplate>
        </phone:LongListSelector>
    </Grid>
    <Grid Grid.Row="2">
        <Button Name="save" Tap="save_Tap">
        </Button>        

c代码

protected override void OnNavigatedTo(NavigationEventArgs e)
{
        using (hesabContext ctx = new hesabContext(hesabContext.ConnectionString))
        {
            ctx.CreateIfNotExists();
            ctx.LogDebug = true;
            MainLongListSelector.ItemsSource = ctx.Hesabdar.ToList();
        }
}
private void TextBox_TextChanged(object sender, TextChangedEventArgs e)
{
}
private void save_Tap(object sender, System.Windows.Input.GestureEventArgs e)
{
        using (hesabContext ctx = new hesabContext(hesabContext.ConnectionString))
        {
            ctx.SubmitChanges();
        }
}

如何在windows phone 8的SQL Server CE数据库上使用双向绑定

您需要在表单的持续时间内保持DataContext活动