WPF: я хочу отображать заголовки в строках и столбцах с сеткой данных - PullRequest
0 голосов
/ 21 апреля 2020

Я хочу отображать текст заголовка для каждого столбца и строки при отображении данных, извлеченных из MySQL в сетке данных.

    Col0      Col1      Col2      Col3
|    1    |    3    |    5    |    6    |
|    3    |    2    |    1    |    8    |

Я хочу отображать, как показано ниже.

Col0 |    1    |    3    | 
Col1 |    3    |    2    | 
Col2 |    3    |    2    |
Col3 |    3    |    2    | 

Затем я хочу отобразить произвольный текст в заголовке строки.

        text1     text2
Col0 |    1    |    3    | 
Col1 |    3    |    2    | 
Col2 |    3    |    2    |
Col3 |    3    |    2    | 

Я попробовал эту ссылку URL со ссылкой на информацию.

WPF DataGrid RowHeader привязка данных

Но я вижу заголовки столбцов, но не заголовки строк.

DbTest.xaml.cs

public partial class DbTest : Page
    {

        public DbTest()
        {
            InitializeComponent();

            string sLogin = "login data;";
            MySqlConnection conn = new MySqlConnection(sLogin);

            try
            {
                conn.Open();
                MySqlCommand cmd = new MySqlCommand("select * from tablename where id = 2", conn);
                MySqlDataAdapter adp = new MySqlDataAdapter(cmd);
                DataSet ds = new DataSet();
                adp.Fill(ds, "LoadDataBinding");

                DataContext = ds;
            }
            catch (MySqlException ex)
            {
                MessageBox.Show(ex.ToString());
            }
            finally
            {
                conn.Close();
            }
        }
    }
}

DbTest.xaml

<Grid Height="350" Width="625" Background="#FFD1F9EE" >
        <TextBlock Height="32" HorizontalAlignment="Left" Margin="16,15,0,0" Name="textBlockHeading" Text="Test2" VerticalAlignment="Top" Width="310"  FontSize="20" FontStretch="Normal"/>
        <Grid HorizontalAlignment="Left" Height="310" VerticalAlignment="Top" Width="625">
            <DataGrid AutoGenerateColumns="False" HorizontalAlignment="Left" Margin="14,55,0,46" Name="dataGridCustomers" Width="575" ItemsSource="{Binding Path=LoadDataBinding}" CanUserResizeRows="False">
                <DataGrid.Columns>
                    <DataGridTextColumn Binding="{Binding Path=id}" Header="id" Width="100" IsReadOnly="True" />
                    <DataGridTextColumn Binding="{Binding Path=data}" Header="data" Width="100" IsReadOnly="True" />
                </DataGrid.Columns>
                <DataGrid.RowHeaderTemplate>
                    <DataTemplate>
                        <TextBlock Text="{Binding RelativeSource={RelativeSource Mode=FindAncestor, 
                                      AncestorType={x:Type DataGridRow}}, 
                                      Path=Item.Header}"/>
                    </DataTemplate>
                </DataGrid.RowHeaderTemplate>
            </DataGrid>
        </Grid>
    </Grid>

Как видите, на экране нет заголовка столбца. Я также хочу показать заголовки строк и любые заголовки столбцов enter image description here

Я привязываю данные для отображения заголовков столбцов в DbTest.xaml.

Я прошел некоторые текст, который я хочу отображать в заголовках столбцов для DataContext в виде списка или массива, но он не работает.

Как получить данные, извлеченные из MySQL, для отображения на экране со строкой и заголовки столбцов?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...