В моей таблице данных есть несколько программно добавленных столбцов.
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; }
}
}
Когда я устанавливаю коллекцию для источника элементов, пройдет несколько лет, прежде чем сетка данных будет заполнена данными, иногда (примерно с 25 столбцами) до 30 секунд или более!
Мой XAML довольно чистый:
<DataGrid AutoGenerateColumns="False" ItemsSource="{Binding}" Name="dgData">
<DataGrid.Columns>
<DataGridTextColumn Header="Set" Binding="{Binding Set}" Width="100"/>
</DataGrid.Columns>
</DataGrid>
Есть ли какие-либо советы по улучшению производительности этой привязки? Если я удаляю привязку, при создании столбца она работает нормально!