簡體   English   中英

WPF DataGrid 綁定性能問題

[英]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>

是否有任何提示可以提高此綁定的性能? 如果我刪除綁定,在創建列時,它可以正常運行!

請嘗試將EnableColumnsVirtualizationEnableRowVirtualization屬性都設置為 true,至少這會提高填充性能,盡管滾動仍然會很慢。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM