public DataGridPage() { this.InitializeComponent(); var dataGridSortDescription = DataGridSortDescription.FromPath(nameof(Country.Region), ListSortDirection.Ascending, new ReversedStringComparer()); var collectionView1 = new DataGridCollectionView(Countries.All); collectionView1.SortDescriptions.Add(dataGridSortDescription); var dg1 = this.Get <DataGrid>("dataGrid1"); dg1.IsReadOnly = true; dg1.LoadingRow += Dg1_LoadingRow; dg1.Sorting += (s, a) => { var binding = (a.Column as DataGridBoundColumn)?.Binding as Binding; if (binding?.Path is string property && property == dataGridSortDescription.PropertyPath && !collectionView1.SortDescriptions.Contains(dataGridSortDescription)) { collectionView1.SortDescriptions.Add(dataGridSortDescription); } }; dg1.Items = collectionView1; var dg2 = this.Get <DataGrid>("dataGridGrouping"); dg2.IsReadOnly = true; var collectionView2 = new DataGridCollectionView(Countries.All); collectionView2.GroupDescriptions.Add(new DataGridPathGroupDescription("Region")); dg2.Items = collectionView2; var dg3 = this.Get <DataGrid>("dataGridEdit"); dg3.IsReadOnly = false; var items = new List <Person> { new Person { FirstName = "John", LastName = "Doe", Age = 30 }, new Person { FirstName = "Elizabeth", LastName = "Thomas", IsBanned = true, Age = 40 }, new Person { FirstName = "Zack", LastName = "Ward", Age = 50 } }; var collectionView3 = new DataGridCollectionView(items); dg3.Items = collectionView3; var addButton = this.Get <Button>("btnAdd"); addButton.Click += (a, b) => collectionView3.AddNew(); }
public DataGridPage() { this.InitializeComponent(); var dg1 = this.FindControl <DataGrid>("dataGrid1"); dg1.IsReadOnly = true; var collectionView1 = new DataGridCollectionView(Countries.All); //collectionView.GroupDescriptions.Add(new PathGroupDescription("Region")); dg1.Items = collectionView1; var dg2 = this.FindControl <DataGrid>("dataGridGrouping"); dg2.IsReadOnly = true; var collectionView2 = new DataGridCollectionView(Countries.All); collectionView2.GroupDescriptions.Add(new DataGridPathGroupDescription("Region")); dg2.Items = collectionView2; var dg3 = this.FindControl <DataGrid>("dataGridEdit"); dg3.IsReadOnly = false; var items = new List <Person> { new Person { FirstName = "John", LastName = "Doe" }, new Person { FirstName = "Elizabeth", LastName = "Thomas" }, new Person { FirstName = "Zack", LastName = "Ward" } }; var collectionView3 = new DataGridCollectionView(items); dg3.Items = collectionView3; var addButton = this.FindControl <Button>("btnAdd"); addButton.Click += (a, b) => collectionView3.AddNew(); }