2012-04-19 9 views
2

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

答えて

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. 
+0

詳細を教えてください。 – Shan

+0

List <>をデータベースに保存/取得する方法を知っていますか?上記の例ではリストを使用しています。 –

+0

いいえ、私はデータベースにリスト<>を格納することについて考えていません。上記の例では、リストはデータベースの列です。 – Shan

0

チェックしたアイテムだけをデータベーステーブルに保存し、再度必要な場合は、リスト全体を表示し、データベースに存在するアイテムを確認することができます。

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

+0

は、どのように私は、チェックボックスは、データベーステーブル内の項目をチェックし得ることができるのですか?精巧にしてください...ありがとう – Shan

+0

あなたはCheckBox-esをforeachループで実行し、チェックされていればそれをデータベースに追加します。 – BigL

関連する問題