public IUIService CreateUIService() { if (RowTypeIdentifier == null) { throw new Exception("RowTypeIdentifier must be set on " + this.GetType().Name); } IItemsControlTraits traits = ControlTraitsFactory.GetTraitsFor(typeof(DataGrid)); return(new CustomRowCellEnumerationService(RowTypeIdentifier)); }
public void AttachToElement(FrameworkElement element) { if (IsAttached) { return; } log.DebugFormat("Attaching service provider {0} to {1}", this.GetType().Name, element); this.dataGrid = (DataGrid)element; //currentRowService = UIServiceProvider.GetService<ICurrentItemService>(element); dataGrid.CurrentCellChanged += DataGrid_CurrentCellChanged; elementTraits = ControlTraitsFactory.GetTraitsFor(typeof(DataGrid)); UpdateCurrentCell(); columnReorderingHandler = new ColumnReorderingHandler(dataGrid, this); //dataGrid.IsKeyboardFocusWithinChanged += new DependencyPropertyChangedEventHandler(dataGrid_IsKeyboardFocusWithinChanged); //dataGrid.ColumnReordering += new EventHandler<DataGridColumnReorderingEventArgs>(dataGrid_ColumnReordering); //dataGrid.ColumnReordered += new EventHandler<DataGridColumnEventArgs>(dataGrid_ColumnReordered); //dataGrid.ColumnDisplayIndexChanged += new EventHandler<DataGridColumnEventArgs>(dataGrid_ColumnDisplayIndexChanged); }