Я обновляю список через databind, и один из столбцов, которые я пытаюсь вставить, - это флажок. Это обновление обрабатывается threadpool, и я могу вставить данные в порядке, за исключением флажка. Когда я создаю флажок, он отображает xaml вместо элемента checkbox. т.е.C# Threadpool create UI Element
System.Windows.Controls.Checkbox Содержание: IsChecked: Ложные
Определение NotesReminderViewDetails
private struct NotesRemindersViewDetails
{
public string NoteReminderID { get; set; }
public string NoteReminderEnterDate { get; set; }
public string NoteReminderDueDate { get; set; }
public string NoteReminderConents { get; set; }
public CheckBox NoteReminderCompleted { get; set; }
}
Вот код, я использую, чтобы обновить ListView. NoteReminderType
- это структура со всей информацией о записке/напоминании.
NoteReminderType noteType = noteReminder.NoteReminderDetails;
NotesRemindersViewDetails noteReminderDetails = new NotesRemindersViewDetails();
noteReminderDetails.NoteReminderID = noteType.UserFriendlyNoteReminderID.ToString();
noteReminderDetails.NoteReminderEnterDate = noteType.InsertionDate.ToShortDateString();
noteReminderDetails.NoteReminderDueDate = noteType.DueDate.ToShortDateString();
noteReminderDetails.NoteReminderConents = noteType.Description;
listViewNotesReminders.Dispatcher.Invoke(DispatcherPriority.Normal, new Action(delegate()
{
noteReminderDetails.NoteReminderCompleted = new CheckBox();
listViewNotesReminders.Items.Add(noteReminderDetails);
}));
Что мне нужно изменить, чтобы получить флажок, который будет отображаться вместо XAML образуют Threadpool нить?
EDIT
Вот XAML код ListView
<ListView.View>
<GridView>
<GridViewColumn Header="ID" Width="20" DisplayMemberBinding="{Binding Path=NoteReminderID}" />
<GridViewColumn Header="Entered Date" Width="Auto" DisplayMemberBinding="{Binding Path=NoteReminderEnterDate}" />
<GridViewColumn Header="Due Date" Width="75" DisplayMemberBinding="{Binding Path=NoteReminderDueDate}" />
<GridViewColumn Header="Note Contents" Width="300" DisplayMemberBinding="{Binding Path=NoteReminderConents}" />
<GridViewColumn Header="Completed" Width="Auto" DisplayMemberBinding="{Binding Path=NoteReminderCompleted}" />
</GridView>
</ListView.View>
Есть ли какая-то конкретная причина использовать CheckBox вместо поля «bool»? – ShahidAzim
Я хочу, чтобы пользователь мог изменить статус заметки/напоминания, установив флажок, чтобы пометить его как выполненный. – Wesley
Вы смешиваете данные и представление с моим контролем в 'NotesRemindersViewDetails'. Также гораздо обычнее использовать класс, а не структуру. –