private void GetRowDataGridCell(int rowNo) { DataGridRow rowContainer = FindDataGridControl.GetRow(this, rowNo); foreach (ExtendedTemplateColumn col in this.Columns) { var datagridCell = FindDataGridControl.GetCell(this, rowNo, col.DisplayIndex); if (!FilterHelper.DatagridRows.ContainsKey(col)) { var datagridCollection = new List <DataGridCell>(); datagridCollection.Add(datagridCell); FilterHelper.DatagridRows.Add(col, datagridCollection); } else { FilterHelper.DatagridRows[col].Add(datagridCell); } } }
private void EvaluateDatagridColumn() { DataGridRow rowContainer = FindDataGridControl.GetRow(this, 0); Type itemSourceType = (this.ItemsSource as IEnumerable).AsQueryable().ElementType; foreach (ExtendedTemplateColumn col in this.Columns) { col.FieldNameType = ReflectionHelper.GetPropertyType(col.FieldName, itemSourceType); col.IsNullableBinding = (col.FieldNameType == typeof(string)) || (Nullable.GetUnderlyingType(col.FieldNameType) != null); if (col.IsDefaultBinding) { continue; } var datagridCell = FindDataGridControl.GetCell(this, 0, col.DisplayIndex); var framework = FindControl.FindChild <FrameworkElement>((ContentPresenter)datagridCell.Content, string.Empty); var textBlock = framework as TextBlock; col.IsDefaultBinding = textBlock == null; } }