にバインドされているリストに問題がありComboBox
ます。
List
:_
private List<string> _CourseList = new List<string>();
public List<string> CourseList
{
get { return _CourseList; }
set
{
_CourseList = value;
OnPropertyChanged("CourseList");
}
}
の XAML コードComboBox
:
<ComboBox x:Name="cbxCourse" Height="23" MinWidth="100" Margin="5,1,5,1" VerticalAlignment="Top" ItemsSource="{Binding Path=CourseList}" IsEnabled="{Binding Path=CanExport}" SelectedIndex="{Binding Path=CourseListSelectedIndex}" SelectedItem="{Binding Path=CourseListSelectedItem}" SelectionChanged="cbxCourse_SelectionChanged"/>
今、私List
は別のスレッドから入力します:
void Database_LoadCompleted(object sender, SqliteLoadCompletedEventArgs e)
{
foreach (DataTable Table in DataSetDict[CampagneList[0]].Tables)
{
CourseList.Add(Table.TableName);
}
}
すべてが良さそうに見えComboBox
、アイテムが変更されました。MainThreadのComboBox
( ) を次のように更新しようとすると:CourseList
private void cbxCampagne_SelectionChanged(object sender, EventArgs e)
{
if (cbxCampagne.SelectedItem != null)
{
CourseList.Clear();
foreach (DataTable Table in DataSetDict[CampagneList[_CampagneListSelectedIndex]].Tables)
{
CourseList.Add(Table.TableName);
}
}
すべての要素がCourseList
変更されました (a で確認できますTextbox
) が、ComboxBox
何も起こりません。
何か案は?