新手入门WPF之DataGrid控件(一)

这篇具有很好参考价值的文章主要介绍了新手入门WPF之DataGrid控件(一)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、DataGrid简单使用

DataGrid的使用其实跟TreeView类似,只不过后台组织的对象结构不同,DataGrid一般不需要递归结构,它绑定的数据源,一个属性就代表一个一列,理解不了没事,我直接上代码。

定义了一个关于水果的对象(这次偷懒了,想着简单介绍下,就没按正规创建工程的方式来了)

新手入门WPF之DataGrid控件(一)

		private string name;
		/// <summary>
		/// 名字
		/// </summary>
		public string Name
		{
			get => name;
			set
			{
				name = value;
				OnPropertyChanged();
			}
		}

		private int number;
		/// <summary>
		/// 数量
		/// </summary>
		public int Number
		{
			get => number;
			set
			{
				number = value;
				OnPropertyChanged();
			}
		}

		private double price;
		/// <summary>
		/// 价格
		/// </summary>
		public double Price
		{
			get => price;
			set
			{
				price = value;
				OnPropertyChanged();
			}
		}

 三个属性,对应三列,老规矩,写界面和ViewModel(代码很简单,自己写咯)

新手入门WPF之DataGrid控件(一)

 新手入门WPF之DataGrid控件(一)

        public ObservableCollection<DataGridModel> DataGridModels { get; set; } = new ObservableCollection<DataGridModel>();

        public DataGridViewModel()
        {
            Create();
        }

        private void Create()
        {
            DataGridModels.Add(new DataGridModel()
            {
                Name = "苹果",
                Number = 5,
                Price = 1.5
            });
            DataGridModels.Add(new DataGridModel()
            {
                Name = "香蕉",
                Number = 2,
                Price = 15
            });
            DataGridModels.Add(new DataGridModel()
            {
                Name = "菠萝",
                Number = 3,
                Price = 10
            });
        }

写好直接运行,看看效果

新手入门WPF之DataGrid控件(一)

一个对象,对应一行,一个属性,对应一列,跟TreeView每一级对应一个对象类似的,默认的样式有点。。。所以,接下来咱们美化它。

先美化列名成中文 ——>名称、数量、价格(DataGrid下有个Columns是包含所有的列,改列的样式一般也在这里面)

 新手入门WPF之DataGrid控件(一)

        <DataGrid.Columns>
            <DataGridTextColumn Binding="{Binding Name}" Header="名称" />
            <DataGridTextColumn Binding="{Binding Number}" Header="数量" />
            <DataGridTextColumn Binding="{Binding Price}" Header="价格" />
        </DataGrid.Columns>

运行,新手入门WPF之DataGrid控件(一)

嘶,怎么显示两次了。。。 (小问题)看官网发现DataGrids默认自动创建列的,这也就是我们一开始只绑定数据源就显示列的原因,AutoGenerateColumns="False",把这属性设置为False就行了。

接着创建其他的列类型(checkbox、combobox、hyperlink)

新手入门WPF之DataGrid控件(一)

新手入门WPF之DataGrid控件(一)

 (如果这是一直对最后一行进行双击后,再切换到其他行,会增加一行),直接设置CanUserAddRows="False",让它不能创建行。新手入门WPF之DataGrid控件(一)

 OK,接下来设置隔行变色:AlternatingRowBackground="LightBlue"(设置目标行的颜色),AlternationCount="2"(设置变色行间隔,最小值为2)新手入门WPF之DataGrid控件(一)

 最后是对行和单元格的样式设置

    <DataGrid.RowStyle>
        <Style TargetType="DataGridRow">
            <Setter Property="Background" Value="SkyBlue" />
        </Style>
    </DataGrid.RowStyle>
    <DataGrid.CellStyle>
        <Style TargetType="DataGridCell">
            <Style.Triggers>
                <Trigger Property="IsSelected" Value="True">
                    <Setter Property="Foreground" Value="Red" />
                </Trigger>
            </Style.Triggers>
        </Style>
    </DataGrid.CellStyle>

运行结果如图所示 

新手入门WPF之DataGrid控件(一)

 结束

        这次这个是非常简单的介绍,对应DataGrid中的DataGridTemplateColumn(非常强大)的运用,后面我是打算用个场景来展示DataGrid的应用,这篇文章就算是入门篇吧

        当然,欢迎各位批评指正,谢谢啦新手入门WPF之DataGrid控件(一)

附赠

        这是我的demo源码:https://github.com/TQtong/DataGridDemo.git文章来源地址https://www.toymoban.com/news/detail-441404.html

到了这里,关于新手入门WPF之DataGrid控件(一)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【新手入门】矩池云使用指南

    矩池云按使用时间收费,是一款性价比较高的服务器平台,下面根据个人经验介绍第一次如何使用矩池云服务器。 链接: https://www.matpool.com 记得关注公众号领5个算力豆,用于新手体验 等待一分钟左右,页面出现jupyterlab链接 此时代码自动运行。注意第一次使用需要下载包 代

    2024年02月09日
    浏览(65)
  • WPF 自定义DataGrid控件样式模板5个

    样式一: 样式代码: 初始化绑定数据C#代码: 效果展示: 样式二: 上面的代码实现了隔行换色的效果,但是没有鼠标选中效果。另外有些用户希望能够进行列头拖动及排序。那么就需要做以下更改: 添加DataGridRow样式: 在引用时,设置DataGrid的RowStyle=\\\"{StaticResource AlertCoun

    2023年04月27日
    浏览(45)
  • Java使用Aop实现用户操作日志记录(新手入门)

    导入打印日志,aop,hutool,的依赖,Hutool是一个Java工具包,里面封装了大量的常用工具类,到时候咱们就通过这个工具包中有一个工具类可以用来获取客户端IP地址。 自定义操作类型枚举类 因为基本是增删改查四个方法 自定义用来记录用户操作日志的注解 写一个方法加上我

    2024年02月06日
    浏览(48)
  • 从0到1腾讯云服务器使用教程(新手入门)

    腾讯云服务器使用教程包括注册账号实名认证、选择云服务器CVM或轻量应用服务器CPU内存带宽和系统盘配置、安全设置和云服务器远程连接、安全组端口开通教程、云服务器环境部署以搭建网站为例手把手网站上线,云服务器文件传输和数据备份以及技术支持等详细说明:

    2024年02月06日
    浏览(50)
  • 界面开发框架Qt新手入门教程:Dir视图使用实例

    Qt 是目前最先进、最完整的跨平台C++开发工具。它不仅完全实现了一次编写,所有平台无差别运行,更提供了几乎所有开发过程中需要用到的工具。如今,Qt已被运用于超过70个行业、数千家企业,支持数百万设备及应用。 点击获取Qt Widget组件下载 本示例演示了树形视图的用

    2024年02月08日
    浏览(51)
  • Github Desktop 下载、安装、汉化和卸载(新手入门使用教程)

    打开GitHub Desktop官网https://desktop.github.com/ 点击 download for Windows(64bit),下载 GitHub Desktop 启动安装 双击下载好的安装包,启动安装 安装进度 显示安装进度页面,稍微耐心等等,页面消失即安装完成 GithubDesktopZhTool为GitHubDesktop汉化工具。 注:遇到汉化失败,重试一下子。 意

    2024年04月17日
    浏览(142)
  • WPF入门教程系列二十五——DataGrid使用示例(2)

    WPF入门教程系列目录 WPF入门教程系列二——Application介绍 WPF入门教程系列三——Application介绍(续) WPF入门教程系列四——Dispatcher介绍 WPF入门教程系列五——Window 介绍 WPF入门教程系列十一——依赖属性(一) WPF入门教程系列十五——WPF中的数据绑定(一)        默认情况下

    2024年02月05日
    浏览(49)
  • WPF入门教程系列二十六——DataGrid使用示例(3)

    WPF入门教程系列目录 WPF入门教程系列二——Application介绍 WPF入门教程系列三——Application介绍(续) WPF入门教程系列四——Dispatcher介绍 WPF入门教程系列五——Window 介绍 WPF入门教程系列十一——依赖属性(一) WPF入门教程系列十五——WPF中的数据绑定(一)   五、DataGrid的DataG

    2024年02月06日
    浏览(41)
  • WPF入门教程系列二十四——DataGrid使用示例(1)

    WPF入门教程系列目录 WPF入门教程系列二——Application介绍 WPF入门教程系列三——Application介绍(续) WPF入门教程系列四——Dispatcher介绍 WPF入门教程系列五——Window 介绍 WPF入门教程系列十一——依赖属性(一) WPF入门教程系列十五——WPF中的数据绑定(一)           WPF技术

    2024年02月04日
    浏览(37)
  • 测试新手百科:Postman简介、安装、入门使用方法详细攻略!

    本文:Postman基础 目录 一、Postman背景介绍 二、Postman的操作环境 三、Postman下载安装 四、Postman的基础功能 五、接口请求流程 六、管理用例—Collections 七、身份验证Authentication  用户在开发或者调试网络程序或者是网页B/S模式的程序的时候是需要一些方法来跟踪网页请

    2024年02月11日
    浏览(63)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包