2

チェックボックス付きのリストボックス項目が 105 個あります。ユーザーがアイテムを選択すると、選択したアイテムが WP7 ローカル データベースに保存されます。では、データベース テーブルの列にすべてのリスト アイテムを入力する必要がありますか? または、それを保存して、必要に応じて選択したアイテムを表示する他の方法はありますか? C# と XAML を使用しています。助けてください!

4

2 に答える 2

0

チェックした項目のみをデータベーステーブルに保存できます。再度必要な場合は、リスト全体を表示して、データベースに存在する項目を確認してください。

または、IsCheckedフィールドを使用してデータベース内のすべてのアイテムを保存し、リスト内のテーブル全体を読み取ってから、チェックボックスをIsCheckedフィールドにバインドすることもできます。

于 2012-04-19T11:28:37.220 に答える
0

私をシンプトンと呼んでくださいが、これが私のやり方です

// to display user selection - days is a List<DayOfWeek> as stored by you in database
foreach(var day in days)
{
    ListBoxItem lbi = new ListBoxItem();
    TextBlock tb = new TextBlock();
    tb.Text = day.ToString();

    lbi.Content = tb;
    lbi.VerticalContentAlignment = System.Windows.VerticalAlignment.Center;
    lbi.IsSelected = AlarmMod.AlarmData.SelectedDays.Contains(day);

    this.listBox.Items.Add(lbi);
}

// to store
List<DayOfWeek> iDays = new List<DayOfWeek>();

for (int i = 0; i < 7; i++)
{
    if ((this.listBox.Items[i] as ListBoxItem).IsSelected)
    {
        iDays.Add((DayOfWeek)i);
    }
}
// now you store iDays which is a List<DayOfWeek> in database.
于 2012-04-19T11:59:30.083 に答える