[英]WPF DataGrid Binding Performance Issue
我的數據網格有許多以編程方式添加的列。
dgData.Columns.Add(new DataGridTextColumn { Width=50, Header = e.Naam, Binding = new Binding(String.Format("Figures[{0}]", e.Id)) });
設置為數據網格的項源的集合是數據項的集合
public class Data
{
private string _set = "";
public string Set
{
get { return _set; }
set { _set = value; }
}
private Dictionary<long, int> _figures;
public Dictionary<long, int> Figures
{
get { return _figures; }
set { _figures = value; }
}
}
當我將集合設置為 itemssource 時,datagrid 需要很長時間才能填充數據,有時(大約 25 列)長達 30 秒或更長時間!
我的 XAML 非常干凈:
<DataGrid AutoGenerateColumns="False" ItemsSource="{Binding}" Name="dgData">
<DataGrid.Columns>
<DataGridTextColumn Header="Set" Binding="{Binding Set}" Width="100"/>
</DataGrid.Columns>
</DataGrid>
是否有任何提示可以提高此綁定的性能? 如果我刪除綁定,在創建列時,它可以正常運行!
請嘗試將EnableColumnsVirtualization
和EnableRowVirtualization
屬性都設置為 true,至少這會提高填充性能,盡管滾動仍然會很慢。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.