protected UIElement GetItemsPart() { IEnumerable <IDeliveryNoteItem> dataSource = PrintContext.GetPageItems(CurrentPage); DataGrid grid = new DataGrid() { AutoGenerateColumns = false, Margin = new Thickness(5, 0, 0, 0), SelectionUnit = DataGridSelectionUnit.CellOrRowHeader, SelectionMode = DataGridSelectionMode.Single, CanUserResizeColumns = false, CanUserSortColumns = false, CanUserAddRows = false, CanUserDeleteRows = false, CanUserReorderColumns = false, EnableRowVirtualization = false, ItemsSource = dataSource, IsReadOnly = true, HeadersVisibility = DataGridHeadersVisibility.None, BorderBrush = Brushes.White, Background = Brushes.White, GridLinesVisibility = DataGridGridLinesVisibility.Vertical }; DataGridTextColumn column = new DataGridTextColumn(); column.Width = 100; column.Binding = new Binding("SpecialCode"); grid.Columns.Add(column); column = new DataGridTextColumn(); column.Width = 100; column.Binding = new Binding("CentralCode"); grid.Columns.Add(column); column = new DataGridTextColumn(); column.Width = 400; column.Binding = new Binding("Name"); grid.Columns.Add(column); column = new DataGridTextColumn(); column.Width = 80; column.Binding = new Binding("Amount"); Style cellStyle = new Style(typeof(TextBlock)); cellStyle.Setters.Add(new Setter(FrameworkElement.HorizontalAlignmentProperty, HorizontalAlignment.Right)); column.ElementStyle = cellStyle; grid.Columns.Add(column); return(grid); }