[英]How to prevent datagrid from refreshing data?
這是場景:
我需要網格 A 保持不變,直到用戶單擊保存按鈕,無論網格 B 可能有也可能沒有任何更改。 當我綁定到下面的屬性時,當 Grid B 更改時,兩個網格都會更改。 我想避免這種情況。
這樣做的最佳方法是什么? 兩個網格當前都綁定到以下屬性:
public EntitySet<SomeEntity> SomeEntities
{
get { return _entity; }
set
{
if (_entity != value)
{
_entity= value;
OnPropertyChanged("SomePropertyChanged");
}
}
}
將網格 A 的綁定設置為 OneTime。
IE
Text="{Binding Path=Age, Mode=OneTime}"
也許不是完全切換網格綁定到的 SomeEntities 集合,而是使用 ObservableCollection,然后在 ObservableCollection 中逐項更新。 然后使用 Derek 提到的 Mode=OneTime。
您可以創建兩個 EntitySet,每個 DataGrid 一個。 保存后,您必須更新綁定到只讀 DataGrid 的集合。
通過使用帶有 OneTime 綁定的 DataGridTemplateColumn 使其工作。 例如,
<sdk:DataGridTemplateColumn>
<sdk:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Enabled, Mode=OneTime}"></TextBlock>
</DataTemplate>
</sdk:DataGridTemplateColumn.CellTemplate>
</sdk:DataGridTemplateColumn>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.