I have to display every row from table choose by the user, everyting seems be good, but the table is filled by blank rows, I am using DataGrid to display data. Can anyone tell me what I am doing wrong here ?
private void showSelectedTable(object sender, RoutedEventArgs e)
{
if (mysql.IsChecked == true)
{
string query = "SELECT * FROM " + tableListBox.SelectedItem.ToString();
MySqlCommand myTableContent = new MySqlCommand(query, (MySqlConnection)conn);
try
{
MySqlDataReader myReader = null;
myReader = myTableContent.ExecuteReader();
choosenDataTable = myReader.GetSchemaTable();
foreach (DataRow row in choosenDataTable.Rows)
{
DataGridTextColumn textColumn = new DataGridTextColumn();
textColumn.Header = row.Field<String>("ColumnName");
tableDataGrid.Columns.Add(textColumn);
}
if (myReader.HasRows)
{
while (myReader.Read())
{
ObservableCollection<String> observable = new ObservableCollection<String>();
for (int i = 1; i < myReader.Columns.Count; i++)
{
observable.Add(myReader.GetString(i));
}
tableDataGrid.Items.Add(observable);
}
}
}
catch(SqlException ex)
{
MessageBox.Show(ex.Message.ToString());
}
}
}