在 Windows Phone 8.1 中将数据从 SQLite 绑定到 ListView

Binding data from SQLite to ListView in Windows Phone 8.1

首先,我尝试了在 Whosebug 上回答的其他示例,也尝试了其他示例,但在我的案例中没有找到成功。

我正在尝试将数据库中 table 中的数据绑定到列表视图 ListView 本身看起来像这样:

<ListView x:Name="lbItems" Width="Auto" Height="Auto" Margin="10" Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="3" Opacity="100" BorderThickness="0" Foreground="White" Background="Transparent">
        <ListView.ItemContainerStyle>
            <Style TargetType="ListViewItem">
                <Setter Property="HorizontalContentAlignment" Value="Stretch" />
            </Style>
        </ListView.ItemContainerStyle>

        <Grid>
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="*" />
                <ColumnDefinition Width="60" />
            </Grid.ColumnDefinitions>
            <CheckBox Grid.Column="0" x:Name="cbx" IsChecked="{Binding IsChecked}" Content="{Binding Content}" Height="58" Margin="10, 0, 0, 0" HorizontalAlignment="Stretch" VerticalAlignment="Center" HorizontalContentAlignment="Stretch" VerticalContentAlignment="Center" Width="Auto" />
            <AppBarButton Tag="{Binding Id}" Grid.Column="1" Icon="Delete" Height="58" HorizontalAlignment="Right" Width="60" VerticalAlignment="Stretch" HorizontalContentAlignment="Right" Margin="0,0,10,0" Click="DeleteButton_Click" />
        </Grid>
    </ListView>

然后在后面的C#代码中:

public sealed partial class MainPage : Page
{
    ObservableCollection<tbl_Items> DB_ItemsList = new ObservableCollection<tbl_Items>();

    protected override void OnNavigatedTo(NavigationEventArgs e)
    {
        ReadAllItemsList dbitems = new ReadAllItemsList();
        DB_ItemsList = dbitems.GetAllItems();
        lbItems.ItemsSource = DB_ItemsList.OrderBy(i => i.Id).ToList();
    }

这里我按照这个例子来创建数据库和数据库操作:LINK

因此,在我的列表视图中,我只获得了我的 table 名称(而不是绑定 table 中的内容)。 我不知道我做错了什么。请帮助。

像这样把Listview的模板代码放在ListView的DataTemplate里面

            <ListView.ItemTemplate>
            <DataTemplate>
                <Grid>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="*" />
                        <ColumnDefinition Width="60" />
                    </Grid.ColumnDefinitions>
                    <CheckBox Grid.Column="0" x:Name="cbx" IsChecked="{Binding IsChecked}" Content="{Binding Content}" Height="58" Margin="10, 0, 0, 0" HorizontalAlignment="Stretch" VerticalAlignment="Center" HorizontalContentAlignment="Stretch" VerticalContentAlignment="Center" Width="Auto" />
                    <AppBarButton Tag="{Binding Id}" Grid.Column="1" Icon="Delete" Height="58" HorizontalAlignment="Right" Width="60" VerticalAlignment="Stretch" HorizontalContentAlignment="Right" Margin="0,0,10,0" Click="DeleteButton_Click" />
                </Grid>
            </DataTemplate>
        </ListView.ItemTemplate>