I`ve數據網格其中的數據來自數據集和數據網格被設置DataGrid.Columns.Count始終爲0
AutoGenerateColumns="true"
現在我想在索引6通過代碼數據網格添加一列。 Columns.Insert(6,Column);
問題是DataGrid似乎沒有列。我得到了該指數應該在範圍內的錯誤。
當我試圖計數列顯示超時0.但我看到所有的數據。
有沒有什麼竅門或爲什麼列數等於0
下面是一些代碼:
XAML的DataGrid:
<DataGrid AutoGenerateColumns="True" AutoGeneratingColumn="DataGrid_AutoGeneratingColumnHandler" HorizontalAlignment="Stretch" Name="dgJournal" VerticalAlignment="Stretch" UseLayoutRounding="True" Margin="8,65,8,30" HorizontalGridLinesBrush="Blue" RowHeaderWidth="25" VerticalGridLinesBrush="Blue" MouseDoubleClick="DataGrid_CellDoubleClick" DataGridCell.Selected="DataGrid_GotFocus" />
欄將被添加:
private DataGridTemplateColumn CreateCheckBoxColumn()
{
MdlSettings modSett = new MdlSettings();
DataGridTemplateColumn tempCol = new DataGridTemplateColumn();
tempCol.Header = "S";
FrameworkElementFactory factory = new FrameworkElementFactory(typeof(CheckBox),"ownselect");
DataTemplate voidTemplate = new DataTemplate();
voidTemplate.VisualTree = factory;
tempCol.CellTemplate = voidTemplate;
Style chkBoxStyle = new Style();
chkBoxStyle.Setters.Add(new EventSetter(CheckBox.CheckedEvent, new RoutedEventHandler(this.check_CheckBox)));
chkBoxStyle.Setters.Add(new EventSetter(CheckBox.UncheckedEvent, new RoutedEventHandler(this.check_CheckBox)));
chkBoxStyle.Setters.Add(new Setter(CheckBox.IsCheckedProperty, true));
chkBoxStyle.Setters.Add(new Setter(CheckBox.IsThreeStateProperty, false));
tempCol.CellStyle = chkBoxStyle;
return tempCol;
}
一些代碼請:) –