0

我是 WPF 的新手。

我正在尝试在 WPF 中绑定数据网格。

我的代码:

con = new SqlConnection(conClass.conSTR);
            try
            {
                con.Open();
                cmd = new SqlCommand("select * from login",con);
                da = new SqlDataAdapter(cmd);
                DataTable dt=new DataTable("login"); //DataSet ds = new DataSet(); 
                da.Fill(dt);
                gv.ItemsSource = dt.DefaultView;

            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }

XAML:

<Window x:Class="WpfTestApp.Window1"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="Window1" Height="428" Width="503" Loaded="Window_Loaded" xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation">
    <Grid>
        <TextBlock Margin="10" Text="This is a text block" Foreground="Red" TextTrimming="CharacterEllipsis" FontStretch="Normal" FontWeight="Bold"></TextBlock>
        <TextBox Height="23" HorizontalAlignment="Left" Margin="10,29,0,0" Name="txtLoginID" VerticalAlignment="Top" Width="120" />
        <PasswordBox Name="txtPassword" PasswordChar="*" Margin="146,28,221,337"></PasswordBox>
        <Button Content="Button" Height="23" HorizontalAlignment="Left" Margin="100,83,0,0" Name="button1" VerticalAlignment="Top" Width="75" Click="button1_Click"  />
        <DataGrid AutoGenerateColumns="False" Height="247" HorizontalAlignment="Left" Margin="37,130,0,0" Name="gv" VerticalAlignment="Top" Width="303" />
    </Grid>
</Window>

这段代码没有错误。

但我的网格仍然没有绑定到表格。

它只是向我显示水平线。

截屏:

在此处输入图像描述

我不明白为什么我会面临这个问题。

请指导我。

编辑:

网格后<DataGrid AutoGenerateColumns="True">

在此处输入图像描述

4

3 回答 3

2

尝试更改如下:

<DataGrid AutoGenerateColumns="True" DataContext="{Binding}"> 
于 2013-06-03T08:38:46.817 回答
1

尝试更改您的 Xaml 并设置AutoGenerateColumns="True".

这允许网格为您的数据创建列。如果不将其设置为 true,则必须为要显示的列添加列定义。

于 2013-06-03T08:34:19.043 回答
1

更改<DataGrid AutoGenerateColumns="False">

<DataGrid AutoGenerateColumns="True">

添加 RowHeight="25" 到数据网格

于 2013-06-03T08:34:23.863 回答