我有一個列表的問題,它綁定到一個ComboBox
。列表<string>綁定到組合框
的List
:在ComboBox
的
private List<string> _CourseList = new List<string>();
public List<string> CourseList
{
get { return _CourseList; }
set
{
_CourseList = value;
OnPropertyChanged("CourseList");
}
}
XAML代碼:
<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
變其項目。 當我嘗試更新ComboBox
(CourseList
)在MainThread:
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
改變了一切元素(我可以看到它在Textbox
),但在ComboxBox
什麼也沒有發生。
任何想法?
剛剛排除,嘗試從ComboBox XAML解除綁定您的CourseSelectedItem和CourseSelectedIndex並看看會發生什麼。有時在設置這兩個屬性時,事情會變得很奇怪。 – TMan