前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >WPF DataGrid 直接绑定数据

WPF DataGrid 直接绑定数据

作者头像
zls365
发布2020-12-15 15:09:37
3.4K0
发布2020-12-15 15:09:37
举报
文章被收录于专栏:CSharp编程大全CSharp编程大全

初学WPF 以前用的Winform中的 DatagridView就是直接绑定Datasource 就ok了

然后在wpf中一直用的容器 Grid 以为还要各种模板 后台遍历 麻烦 没想到 还有一个 空间 Datagrid 就是相当于Winform中的 datagridview 也可以实现直接绑定数据源。操作如下:

XML:

<DataGrid Name="OperationData" Background="Transparent"> </DataGrid>

后台:

private void Window_Loaded(object sender, RoutedEventArgs e) { datatable dt = 查询数据 OperationData.ItemsSource = dt.DefaultView; }

是不是很简单 。

其实打代码和做事情一个道理的,不一定做的多就是好的,有些事不要太繁琐,去其糟泊取其精华才好,每次在网上搜知识点大部分都是长篇大论,一页有一页的的代码看我的直接就关了。但那些真的的大神都是点石成金,抓其重点,活学活用愿每一个程序员都能少打代码,多用思路。

实例源码:

xaml:

代码语言:javascript
复制
<Window x:Class="WpfApp5.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:WpfApp5"
        mc:Ignorable="d"
        Title="MainWindow" Height="450" Width="800" Loaded="Window_Loaded">
    <Grid>
        <DataGrid Name="dataGrid" AutoGenerateColumns="True" Background="Transparent" Margin="5">

        </DataGrid>
    </Grid>
</Window>

C# code

代码语言:javascript
复制
using System.Data;
using System.Windows;


namespace WpfApp5
{
    /// <summary>
    /// MainWindow.xaml 的交互逻辑
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
        //顺序是新建对bai象-->新建列du-->新建行,示例代码如下:
            DataTable dt = new DataTable();            //新建对象
            dt.Columns.Add("姓名", typeof(string));   //新建第一du列
            dt.Columns.Add("年龄", typeof(int));      //新建第二列
            dt.Rows.Add("张三", 23);                 //新建第一行,并赋值
            dt.Rows.Add("李四", 25);                 //新建第二行,并赋值
            dataGrid.ItemsSource = dt.DefaultView;//将数据源显示到dataGrid控件上
        }
    }
}

如果从XAML中生成表格的列名称,修改如下

代码语言:javascript
复制
            <DataGrid x:Name="DATA_GRID" ItemsSource="{Binding}" AutoGenerateColumns="False" Grid.Row="0" Grid.Column="1" Background="LightGray" Margin="10">
                    <DataGrid.Columns>
                    <DataGridTextColumn Header="姓名" Binding="{Binding 姓名}"/>
                    <DataGridTextColumn Header="年龄" Binding="{Binding 年龄}"/>
                </DataGrid.Columns>
            </DataGrid>
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-12-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 CSharp编程大全 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档