Ho un problema.Aggiunta immagine eseguire DataGrid in modo programmatico nel progetto C# wpf - come?
Voglio scrivere TUTTE le cose in modo programmatico in C#, senza VS Designer.
Quindi, sto creando un'immagine e DataGrid e (e sto aggiungendo come un bambino di MainWindow Griglia):
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);
Poi voglio aggiungere 4 colonne, ad esempio, 3 del testo e uno di immagine. Così in un primo momento ho bisogno di creare un DataTable e DataRow con dati di esempio:
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);
ora ho un DataTable con 4 colonne e 1 riga di dati.
Poi tutto quello che ho bisogno di fare è impostare ItemsSource di DataGrid in questo modo:
dg.ItemsSource = dt.DefaultView;
Quello che sto facendo di sbagliato? Perché sulla griglia finale c'è System.Windows.Controls.Image in una riga anziché un'immagine reale? Devo legarlo o qualcosa del genere?
Tutte le cose che devo fare programmaticamente, senza designer.
Come visualizzare l'immagine reale anziché quella stringa?
OMG! senza designer? che ne dici di scrivere XAML? questa non è una winform. non manipolare gli elementi dell'interfaccia utente nel codice. –