Guest User

Untitled

a guest
Apr 21st, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.62 KB | None | 0 0
  1. // XAML
  2. <toolkit:DataGrid x:Name="dataGrid" ItemsSource="{Binding Path=.}"/>
  3.  
  4.  
  5. // C#
  6. DataTable dataTable = new DataTable();
  7. MyViewModel viewModel = new MyViewModel();
  8.  
  9. this.dataGrid.AutoGenerateColumns = false;
  10. this.dataGrid.CanUserAddRows = false;
  11. this.dataGrid.CanUserDeleteRows = false;
  12. this.dataGrid.CanUserReorderColumns = true;
  13. this.dataGrid.CanUserResizeColumns = true;
  14. this.dataGrid.CanUserResizeRows = false;
  15. this.dataGrid.CanUserSortColumns = true;
  16. this.dataGrid.IsReadOnly = true;
  17. this.dataGrid.VerticalScrollBarVisibility = ScrollBarVisibility.Auto;
  18. this.dataGrid.HorizontalScrollBarVisibility = ScrollBarVisibility.Auto;
  19.  
  20. this.dataGrid.ColumnHeaderHeight = 18;
  21. this.dataGrid.RowHeight = 18;
  22. this.dataGrid.DataContext = vm.dataGrid;
  23.  
  24. List<string> s = new List<string>();
  25.  
  26. for (int i = 0; i < 80; ++i)
  27. {
  28. s.Add("col" + i);
  29. }
  30.  
  31. for (int i = 0; i < s.Count; ++i)
  32. {
  33. dataTable.Columns.Add(new DataColumn(s[i], typeof(string)));
  34.  
  35. Binding items = new Binding();
  36. PropertyPath path = new PropertyPath(dataTable.Columns[i].ColumnName);
  37. items.Path = path;
  38.  
  39. DataGridColumn dc = new DataGridTextColumn()
  40. {
  41. Header = dataTable.Columns[i].ColumnName,
  42. Width=70,
  43. Binding = items
  44. };
  45.  
  46. this.dataGrid.Columns.Add(dc);
  47. }
  48.  
  49. viewModel.dataGrid = dataTable;
  50. this.dataGrid.DataContext = viewModel.dataGrid;
  51.  
  52. for (int i = 0; i < 1000; ++i)
  53. {
  54. var row = dataTable.NewRow();
  55. for (int j = 0; j < s.Count; ++j)
  56. {
  57. row[s[j]] = "text" + s[j] + j;
  58. }
  59. dataTable.Rows.Add(row);
  60. }
Add Comment
Please, Sign In to add comment