2013-02-11 2 views
0

Я работаю над приложением, которое считывает три файла Excel в DataTables. Они называются вариантами, наборами и частями. Варианты и наборы связаны с DataRelation, а также с наборами и частями.Управление WPF DataGrid с дополнительным столбцом

В одной части программы я использую элемент управления DataGrid для отображения содержимого всей таблицы Variants через DataView. Проблема в том, что после всех фактических столбцов в таблице Variants DataGrid показывает один последний столбец с именем VariantsKits, который является именем DataRelation между таблицами Variants и Kits.

Что я могу сделать, чтобы не показывать это? Я использую AutoGenerateColumns, поскольку я точно не знаю, какие столбцы находятся в импортированном файле Excel Excel.

Любые советы будут оценены.

ответ

1
// You might have to add a reference to the dll first) 
using System.ComponentModel.DataAnnotations; 

[Display(AutoGenerateField = false)] 
public PropertyType ThisIsThePropertyYouDontWantToShowUp { get; set; } 

Второй вариант был бы вклиниться в случае AutoGeneratingColumn на в DataGrid и иметь его отменить для столбца вы не хотите

private void DataGrid_AutoGeneratingColumn(
    object sender, DataGridAutoGeneratingColumnEventArgs e) 
    { 
     if (/* do a check on e.PropertyName or e.PropertyType*/) 
      e.Cancel = true; 
    } 
+0

Второй подход, очевидно, будет больше в соответствии с что вам нужно, если у вас нет классов для ваших типов данных. –

+0

Спасибо большое! Я использовал ваше второе предложение, и он работал хорошо. –

Смежные вопросы