我遇到问题。添加图像在C#wpf项目中编程DataGrid - 如何?
我想用C#编写所有的东西,不需要VS Designer。
所以,我创建的图像,并和DataGrid(我将其作为主窗口格的孩子):
Image img = new Image();
Uri uri = new Uri(@"C:\d1.jpg");
img.Source = new System.Windows.Media.Imaging.BitmapImage(uri);
DataGrid dg = new DataGrid();
grid1.Children.Add(dg);
然后我想补充4列例如,文本3和一个图像。所以刚开始我需要创建一个DataTable和DataRow样本数据:
DataTable dt = new DataTable();
dt.Columns.Add("Column1");
dt.Columns.Add("Column2");
dt.Columns.Add("Column3");
dt.Columns.Add("Column4", typeof(Image)); // type of image!
DataRow dr = dt.NewRow();
dr[0] = "aaa";
dr[1] = "bbb";
dr[2] = "ccc";
dr[3] = img; // add a sample image
dt.Rows.Add(dr);
现在我有4列和1行数据的数据表。
然后,所有我需要做的就是这样设置的DataGrid的ItemsSource的:
dg.ItemsSource = dt.DefaultView;
我做错了吗?为什么在最后的网格中有一行而不是实际的图像是System.Windows.Controls.Image?我需要绑定它还是什么?
所有事情我需要做的,没有设计师的程序化。
如何显示真实图像而不是该字符串?
OMG!没有设计师?怎么写XAML?这不是winforms。不要在代码中操作UI元素。 –