-2
我是WPF和C#編程的新手。 我有一個組合框,顯示哪個用戶屬於哪個狀態,如果需要的話,可以下拉更新狀態。這個工作非常完美。 問題是當我選擇一個新用戶時,來自上一位用戶的舊數據仍顯示在組合框中。如何確保組合框在用戶更改時顯示新數據。組合框在數據更改時加載新數據
我是WPF和C#編程的新手。 我有一個組合框,顯示哪個用戶屬於哪個狀態,如果需要的話,可以下拉更新狀態。這個工作非常完美。 問題是當我選擇一個新用戶時,來自上一位用戶的舊數據仍顯示在組合框中。如何確保組合框在用戶更改時顯示新數據。組合框在數據更改時加載新數據
你可以參考下面的博客文章如何實現使用MVVM設計模式在WPF級聯ComboBoxes
一個例子:https://blog.magnusmontin.net/2013/06/17/cascading-comboboxes-in-wpf-using-mvvm/
<ComboBox ItemsSource="{Binding Users}"
DisplayMemberPath="Name"
SelectedItem="{Binding SelectedUser}" />
<ComboBox ItemsSource="{Binding States}"
DisplayMemberPath="Name"
SelectedItem="{Binding SelectedState}" />
public ObservableCollection<User> Users {
get;
private set;
}
public ObservableCollection<State> States {
get;
private set;
}
private User _selectedUser;
public User SelectedUser {
get {
return _selectedUser;
}
set {
_selectedUser = value;
States.Clear();
//add the user's states to the States collection:
States.Add(new State() { Name = "..." });
//...
}
}
首先,如果你新的一些編程語言或技術閱讀手冊之前問Stack Overflow問題。對於C#和WPF,它是MSDN和Internet上的大量文章。至於你的問題,我相信你不會在用戶改變時觸發用作'ComboBox'' ItemsSource'的屬性的'PropertyChanged'事件。 – Maxim