1
我有一個控制(這裏:DataGridSelectorControl)一個DataGrid,我想創建它使用coulmns ItemTemplate.actually我想要做這樣的事情是:如何使用ItemsControl分配<DataGrid.Columns>?
<DataGrid x:Name="grd" ItemsSource="{Binding Source={StaticResource theSource}}" AutoGenerateColumns="False" >
<DataGrid.Columns>
<ItemsControl ItemsSource="{Binding DataGridColumnItems}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal" />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
</ItemsControl>
</DataGrid.Columns>
</DataGrid>
我想知道有沒有辦法使用DataGrid.Columns的ItemsControl? ,我想這樣做,因爲我想用這種控制是這樣的:(我要定義每當創建此控件的實例DataGridTextColumns)
<control:DataGridSelectorControl Grid.Row="1">
<control:DataGridSelectorControl.DataGridColumnItems>
<DataGridTextColumn Header="نام" Width="20"></DataGridTextColumn>
<DataGridTextColumn Header="ParentID" Width="20"></DataGridTextColumn>
</control:DataGridSelectorControl.DataGridColumnItems>
</control:DataGridSelectorControl>
和DataGridColumnItems是atachepropery:
public static readonly DependencyProperty DataGridTextColumnItemsProperty = DependencyProperty.Register("DataTextColumnItems", typeof(DataGridColumn), typeof(DataGridSelectorControl));
public DataGridColumn DataGridColumnItems
{
get
{
return (DataGridColumn)GetValue(DataGridTextColumnItemsProperty);
}
set
{
SetValue(DataGridTextColumnItemsProperty, value);
}
}