Mam tabelę wyświetlaną z bazy danych. Chciałbym, aby wyświetlić poziomą Column- header> PionowoWyświetl tabelę poziomą pionowo w Datagrid-WPF
Moja tabela Struktura jest
Server|Role|Status|Date
ale chciałbym wyświetlać jako
Server
Role
Status
Date
Próbowałem odwrócić zestawu danych, i próbowałem to zbudować. Początkowo kompilacja się powiodła, ale nie mogę wyświetlić żadnych danych na moim komputerze datagrid. uprzejma pomoc, czy istnieje inny sposób podejścia do tego problemu?
tutaj jest mój urywek kodu
SqlConnection con;
SqlDataAdapter da = null;
DataSet ds = null;
private void Page_Loaded(object sender, RoutedEventArgs e)
{
try
{
da = new SqlDataAdapter("Select * from [ServerDB_Test].[dbo].[ServerStatus] ", con);
ds = new DataSet();
foreach (DataTable dt in my_DataSet.Tables)
{
DataTable table = new DataTable();
for (int i = 0; i <= dt.Rows.Count; i++)
{
table.Columns.Add(Convert.ToString(i)); }
DataRow r;
for (int k = 0; k < dt.Columns.Count; k++)
{
r = table.NewRow();
r[0] = dt.Columns[k].ToString();
for (int j = 1; j <= dt.Rows.Count; j++)
{
r[j] = dt.Rows[j - 1][k];
}
table.Rows.Add(r);
}
ds.Tables.Add(table);
}
da.Fill(ds);
dataGrid1.ItemsSource = ds.Tables[1].DefaultView;
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
Dzięki
Jeśli się nie mylę, musisz zobaczyć pusty plik danych, prawda? ponieważ widzę, że nie pobrano żadnych danych, a metoda 'da.fill' nie jest wywoływana. Jeśli to poprawisz, jeszcze jeden problem, jaki widzę, po wykonaniu wszystkich logiki transpozycji, karmisz ponownie pierwotną datatable do' dataGrid1' zmień go 'ds.Tabela [1]' zamiast 'ds.Tables [0]' – dotNETbeginner
Tak, proszę bardzo. Widzę pusty datagrid. , ale gdy próbuję dodać da.Fill (ds); jest błąd podczas buidling. Pozwól mi wypróbować opcję, którą podałeś w ostatnim zdaniu, i dasz znać, – user1221765
jaki błąd otrzymujesz dokładnie? a jeśli nie zrobisz "Wypełnienia", nie ma sposobu, aby uzyskać pewne wyjście ... – dotNETbeginner