我想使用MVVM模式的數據網格工作。問題是當我第一次在datagrid中選擇一個項目時,datagrid會正確更新source屬性,然後我選擇另一個項目,source屬性不會更新。提前WPF Datagrid selectedItem不更新源
public Customer SelectedCustomer
{
get { return _selectedCustomer; }
set
{
if (value != _selectedCustomer)
{
_selectedCustomer = value;
NotifyOfPropertyChange(() => SelectedCustomer);
}
}
}
感謝:這是我在XAML綁定:
<DataGrid ItemsSource="{Binding Customers}"
SelectedItem="{Binding SelectedCustomer, Mode=TwoWay,
UpdateSourceTrigger=PropertyChanged}" AutoGenerateColumns="False">
視圖模型代碼!
您確定您在'SelectedCustomer'中設置的'Customer'是'Customers'子項之一。注意'SelectedCustomer'必須與'客戶'子女不是同一個客戶的同一個引用。 (相同的參考不是客戶),這是非常重要的。 – MoHaKa
@MoHaKa感謝您的評論。我確定他們是參考同一個客戶。 –
第一次選擇後,您在輸出窗口中是否有任何綁定錯誤?只是要說清楚你說的是SelectedCustomer在第一次選擇後沒有更新,對嗎?它看起來像你可能會使用CaliburnMicro你有沒有試過設置x:Name =「Customers」,看看CM是否可以爲你處理綁定? –