dee*_*dee 3 wpf datagrid image
我想在wpf datagrid中动态添加两列一个图像和一个文本列。
XAML代码:
<Grid><DataGrid AutoGenerateColumns="False" Height="Auto" HorizontalAlignment="Stretch" Margin="0" Name="grid" VerticalAlignment="Stretch" Width="Auto" ></DataGrid></Grid>
Run Code Online (Sandbox Code Playgroud)
背后的代码:
DataGridTextColumn col = new DataGridTextColumn();
col.Header =Text1;
col.Binding =Text1;
grd.Columns.Add(col);
Run Code Online (Sandbox Code Playgroud)
如何添加图片列?或在该列中显示图片?
请建议
迪
正如Anvaka所说,您可以使用DataGridTemplateColumn。在C#中,您可以添加创建DataGridTemplateColumn,因为这,我在这里已经添加了一个CheckBox到DataGridTemplateColumn。
DataGridTemplateColumn col1 = new DataGridTemplateColumn();
col1.Header = "MyHeader";
FrameworkElementFactory factory1 = new FrameworkElementFactory(typeof(Image));
Binding b1 = new Binding("Picture");
b1.Mode = BindingMode.TwoWay;
factory1.SetValue(Image.SourceProperty, b1);
DataTemplate cellTemplate1 = new DataTemplate();
cellTemplate1.VisualTree = factory1;
col1.CellTemplate = cellTemplate1;
datagrid.Columns.Add(col1);
Run Code Online (Sandbox Code Playgroud)
在这里,Picture是ImageSource分配给ItemsSource的集合中的类的type 属性DataGrid。