wpf中的datagrid绑定类集合与datatable

绑定类集合的代码

 

 Code.Dao.XM xm = new Code.Dao.XM();

List<Code.Model.XM> list = xm.List();

dataGrid1.DataContext = list;

 

xaml写法

<DataGrid AreRowDetailsFrozen="True" AutoGenerateColumns="False" BorderBrush="Black" CanUserAddRows="True" CanUserDeleteRows="True" GridLinesVisibility="None" Height="Auto" HorizontalAlignment="Stretch" ItemsSource="{Binding}" Margin="10" Name="dataGrid1" SelectionMode="Single" VerticalAlignment="Stretch" Loaded="dataGrid1_Loaded" Background="#00000000" RowBackground="#00000000" RowHeaderWidth="NaN" HeadersVisibility="All" Grid.Column="1">

 

<DataGridTemplateColumn Header="类型" IsReadOnly="True" Width="100">

                        <DataGridTemplateColumn.CellTemplate>

                            <DataTemplate>

                                <TextBlock VerticalAlignment="Center" TextAlignment="Center"  Text="{Binding Type.Name}"></TextBlock>

                            </DataTemplate>

                        </DataGridTemplateColumn.CellTemplate>

                    </DataGridTemplateColumn>

 

<DataGridTemplateColumn Header="名称" IsReadOnly="True" Width="100">

                        <DataGridTemplateColumn.CellTemplate>

                            <DataTemplate>

                                <TextBlock VerticalAlignment="Center" TextAlignment="Center"  Text="{Binding Name}"></TextBlock>

                            </DataTemplate>

                        </DataGridTemplateColumn.CellTemplate>

                    </DataGridTemplateColumn>

 

绑定datatable的代码:

Code.Dao.Customer cu = new Code.Dao.Customer();

            System.Data.DataTable dt = cu.ListDB();

            dataGrid1.ItemsSource = dt.DefaultView;

 

xaml的写法与上边的一样,注意 Binding 后边跟的与数据库表中的字段名大小写相同。

 

在datagrid的onload事件中加上

 private void dataGrid1_Loaded(object sender, RoutedEventArgs e)

        {

            dataGrid1.CanUserAddRows = false;

        }

 

否则 界面中的表格最下边有一个空行。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值