WPF之DataGird应用
1,DataGrid相关属性
- GridLinesVisibility:DataGrid网格线是否显示或者显示的方式。
- HorizontalGridLinesBrush:水平网格线画刷。
- VerticalGridLinesBrush:垂直网格线画刷。
- HorizontalScrollBarVisibility:水平滚动条可见。
- VerticalScrollBarVisibility:垂直滚动条可见。
- AutoGenerateColumns:自动生成列。
- ColumnWidth:列宽,DataGrid.ColumnWidth值可以是指定的宽度,也可以是DataGridLength.SizeToCells,DataGridLength.SizeToHeader,DataGridLength.Auto
- CanUserResizeColumns:是否允许调整列宽。
- CanUserReorderColumns:是否允许拖动列的显示顺序。
- FrozenColumnCount:冻结列。
- RowDetailsVisibilityMode:行详情显示模式默认为:VisibleWhenSelected。
- RowDetailsTemplate:行详情显示模板。
示例:
<DataGrid.RowDetailsTemplate><DataTemplate><Border Margin="10" Padding="10" BorderBrush="Coral" BorderThickness="2"><TextBlock TextWrapping="Wrap" Text="{Binding Description}"></TextBlock></Border></DataTemplate></DataGrid.RowDetailsTemplate>

- CanUserSortColumns:是否可以进行排序。
- ColumnHeaderStyle:列表头样式。对列表头进行对齐等操作。
示例:使所有列表头内容居中
<DataGrid.ColumnHeaderStyle><Style TargetType="DataGridColumnHeader"><Setter Property="HorizontalContentAlignment" Value="Center"></Setter></Style></DataGrid.ColumnHeaderStyle>
- Columns:列的集合。再次添加需要显示的列。
示例
<DataGrid.Columns><DataGridTextColumn Header="Product" Width="*" Binding="{Binding ModelName}"><DataGridTextColumn.HeaderStyle><Style TargetType="DataGridColumnHeader"><Setter Property="HorizontalAlignment" Value="Center"></Setter></Style></DataGridTextColumn.HeaderStyle><DataGridTextColumn.EditingElementStyle><Style TargetType="TextBlock"><Setter Property="HorizontalAlignment" Value="Center"></Setter><Setter Property="FontWeight" Value="Bold"></Setter></Style></DataGridTextColumn.EditingElementStyle></DataGridTextColumn><DataGridTextColumn Header="Price" Width="*" Binding="{Binding UnitCost, StringFormat={}{0:C2}}"><DataGridTextColumn.CellStyle><Style TargetType="DataGridCell"><Setter Property="HorizontalAlignment" Value="Center"></Setter><Setter Property="FontWeight" Value="Bold"></Setter><Setter Property="Background" Value="LightBlue"></Setter></Style></DataGridTextColumn.CellStyle></DataGridTextColumn><DataGridTextColumn Header="ModelNumber" Width="2*" Binding="{Binding ModelNumber}"></DataGridTextColumn><DataGridComboBoxColumn Header="Category" Width="2*" SelectedValueBinding="{Binding CategoryID}" DisplayMemberPath="CategoryName" SelectedValuePath="CategoryID" x:Name="dataGridCombobox01"></DataGridComboBoxColumn><DataGridTemplateColumn Header="Image" Width="2*" ><DataGridTemplateColumn.CellTemplate><DataTemplate><TextBlock Text="{Binding ProductImage}"></TextBlock></DataTemplate></DataGridTemplateColumn.CellTemplate><DataGridTemplateColumn.CellEditingTemplate><DataTemplate><Image Source="/Img/3.jpg"></Image></DataTemplate></DataGridTemplateColumn.CellEditingTemplate></DataGridTemplateColumn></DataGrid.Columns>
- AlternationCount:交替显示容器数,配合附加属性ItemsControl.AlternationIndex使用,进行交替设置行的样式。
示例,行样式交替
<DataGrid x:Name="dataGrid01" AlternationCount="3" ColumnWidth="Auto" AutoGenerateColumns="False">
<Window.Resources><Style TargetType="DataGridRow"><Style.Triggers><Trigger Property="ItemsControl.AlternationIndex" Value="0"><Setter Property="Background" Value="AliceBlue"></Setter></Trigger><Trigger Property="ItemsControl.AlternationIndex" Value="1"><Setter Property="Background" Value="Beige"></Setter></Trigger><Trigger Property="ItemsControl.AlternationIndex" Value="2"><Setter Property="Background" Value="Chocolate"></Setter></Trigger></Style.Triggers></Style></Window.Resources>
2,DataGridColumn相关属性
- Width:列宽,可使用*进行倍率设置,例如DataGridTextColumn.Width="2*"。
<DataGridTextColumn Header="Product" Width="*" Binding="{Binding ModelName}">
- CanUserResize:是否允许调整该列的列宽。
- CanUserReorder:是否可拖动该列。
- DataGridBoundColumn.ElementStyle:获取或设置时,使用呈现元素时列的单元格显示不是在编辑模式下的样式(仅适用于DataGridCheckBoxColumn,DataGridHyperlinkColumn,DataGridTextColumn),例如在正常视图下此列内容居中对齐。
注意点:ElementStyle对应的TargetType为TextBlock
<DataGridTextColumn.ElementStyle><Style TargetType="TextBlock"><Setter Property="HorizontalAlignment" Value="Center"></Setter><Setter Property="FontWeight" Value="Bold"></Setter></Style></DataGridTextColumn.ElementStyle>
- DataGridBoundColumn.EditingElementStyle:使用呈现元素时列用于在编辑模式下的单元格显示的样式 (仅适用于DataGridCheckBoxColumn,DataGridHyperlinkColumn,DataGridTextColumn)。
注意点:.EditingElementStyle对应的TargetType为TextBox
- HeaderStyle:此列头的样式
<DataGridTextColumn.HeaderStyle><Style TargetType="DataGridColumnHeader"><Setter Property="HorizontalAlignment" Value="Center"></Setter></Style></DataGridTextColumn.HeaderStyle>
- CanUserSort:此列是否支持排序。如果使用的是DataGridTemplateColumn则需要指定该列的SortMemberPath,否则该列将无法排序。
- DataGridComboBoxColumn.ItemsSource:下拉列表列的集合。
示例:
<DataGridComboBoxColumn x:Name="dataGridCombobox01" Header="Category" Width="2*" SelectedValueBinding="{Binding CategoryID}" DisplayMemberPath="CategoryName" SelectedValuePath="CategoryID" ></DataGridComboBoxColumn>
dataGridCombobox01.ItemsSource = DbStore.DAL.Factory.CategoriesDal.QueryAll();

- DataGridTemplateColumn . CellTemplate:数据模板,获取或设置模板用于显示不是在编辑模式下单元格的内容。
- DataGridTemplateColumn.CellEditingTemplate:数据模板, 获取或设置模板中使用显示了在编辑模式下单元格的内容。
示例
<DataGridTemplateColumn Header="Image" Width="2*" ><DataGridTemplateColumn.CellTemplate><DataTemplate><TextBlock Text="{Binding ProductImage}"></TextBlock></DataTemplate></DataGridTemplateColumn.CellTemplate><DataGridTemplateColumn.CellEditingTemplate><DataTemplate><Image Source="/Img/3.jpg"></Image></DataTemplate></DataGridTemplateColumn.CellEditingTemplate></DataGridTemplateColumn>
相关文章:
WPF之DataGird应用
1,DataGrid相关属性 GridLinesVisibility:DataGrid网格线是否显示或者显示的方式。HorizontalGridLinesBrush:水平网格线画刷。VerticalGridLinesBrush:垂直网格线画刷。HorizontalScrollBarVisibility:水平滚动条可见…...
linux内核debug(二)在线调试内核kdb/kgdb工具使用及环境搭建
目录 一、引言 二、kgdb调试 ------>2.1、kgdb板端配置 ------------>2.1.1、添加编译内核参数 ------------>2.1.2、配置 ------>2.2、kgdb本地调试环境搭建 ------------>2.2.1、串口工具 ------------>2.2.2、连接板端 ------>2.3、kgdb调试 …...
解决“电脑开机黑屏Explorer进程卡死“问题
今天,给台式机按电源键,进入windows系统时,发现电脑黑屏了,昨天还好好的,怎么今天电脑桌面进不去了?想起Windows XP、Windows 7、Windows 10 、Windows 11等系统,在使用多个文件拷贝时ÿ…...
阿里云学习笔记2
企业应用服务 域名以及DNS内容分发网络CDN云监控 1、使用数字证书管理服务申请证书时,需要选择加密算法,通过加密算法得到的密钥对可以保证在世界范围内是唯一的。阿里云SSL证书服务支持______、______和______三种加密算法,可根据不同证书…...
【回溯】1240. 铺瓷砖
本文涉及知识点 回溯 LeetCode1240. 铺瓷砖 你是一位施工队的工长,根据设计师的要求准备为一套设计风格独特的房子进行室内装修。 房子的客厅大小为 n x m,为保持极简的风格,需要使用尽可能少的 正方形 瓷砖来铺盖地面。 假设正方形瓷砖的…...
【Unity Shader入门精要 第7章】基础纹理(一)
1. 纹理映射 每一张纹理可以看作拥有一个属于自己的2D坐标空间,其横轴用U表示,纵轴用V表示,因此也称为UV坐标空间。 UV空间的坐标范围为[0,0]到[1,1],在Unity中,UV空间也是从左下到右上&#…...
el-checkbox选中后的值为id,组件显示为label中文
直接上代码 方法一 <el-checkbox v-for"item in list" :key"item.id" :label"item.id">{{中文}} </el-checkbox> 方法二 <el-checkbox-group class"flex_check" v-model"rkStatusList" v-for"item…...
03-数据结构(一)
链接:C# 数据结构_哔哩哔哩_bilibili https://www.bilibili.com/video/BV1a541147Nk/?spm_id_from333.337.search-card.all.click&vd_source6eb7d966aa03ff5cb02b63725f651e68 链接:使用 C#.Net 学习掌握数据结构 (更新中)_哔哩哔哩_bilibili 一…...
MySQL问题记录-主机被锁问题
主机被锁问题 描述:"Host ‘113.109.111.217’ is blocked because of many connection errors 原因:同一个ip在短时间内产生太多中断的数据库连接而导致的阻塞; 超过mysql数据库max_connection_errors的最大值; 解决方法…...
用好 explain 妈妈再也不用担心我的 SQL 慢了
大家好,我是聪,一个乐于分享的小小程序员。在不久之前我写了一个慢 SQL 分析工具,可以用来分析 Java Mybatis 项目的 SQL 执行情况,其中刚好涉及到了 explain 的使用。感兴趣的可以了解一下。 Github 地址⭐:https://…...
【漏洞复现】泛微OA E-Cology SignatureDownLoad SQL注入漏洞
漏洞描述: 泛微OA E-Cology是一款面向中大型组织的数字化办公产品,它基于全新的设计理念和管理思想,旨在为中大型组织创建一个全新的高效协同办公环境。泛微OA E-Cology SignatureDownLoad存在SQL注入漏洞,允许攻击者非法访问和操…...
前端工程化,前端监控,工作流,部署,性能
开发规范 创建项目的时候,配置下 ESlint,stylelint, prettier, commitlint 等; ESLint 主要功能: ESLint 是一个静态代码检查工具,用于在 JavaScript 代码中识别和报告模式。它的目标是提供一个插件化的 …...
浅析Java贪心算法
浅析Java贪心算法 在计算机科学中,贪心算法(Greedy Algorithm)是一种在每一步选择中都采取在当前状态下最好或最优(即最有利)的选择,从而希望导致结果是全局最好或最优的算法。贪心算法并不总是能够得到全…...
vue3.0(五) reactive全家桶
文章目录 1 reactive1.1 reactive的应用1.2 reactive的特点1.3 reactive的注意1.4 reactive的局限性 2 toRefs3 isReactive4 shallowReactive5 readonly5.1 readonly 详细信息5.2 readonly函数创建一个只读的响应式对象5.3 如何修改嵌套在只读响应式对象中的对象? 6 isReadonl…...
Selenium 自动化 —— 四种等待(wait)机制
更多关于Selenium的知识请访问CSND论坛“兰亭序咖啡”的专栏:专栏《Selenium 从入门到精通》 目录 目录 需要等待的场景 自己实现等待逻辑 Selenium 提供的三种等待机制 隐式等待(Implicit Waits) 隐式等待的优点 隐式等待的缺点 …...
每日两题 / 437. 路径总和 III 105. 从前序与中序遍历序列构造二叉树(LeetCode热题100)
437. 路径总和 III - 力扣(LeetCode) 前序遍历时,维护当前路径(根节点开始)的路径和,同时记录路径上每个节点的路径和 假设当前路径和为cur,那么ans 路径和(cur - target)的出现次数 /*** D…...
matlab使用2-基础绘图
matlab使用2-基础绘图 文章目录 matlab使用2-基础绘图1. 二维平面绘图2. 三维立体绘图3. 图形窗口的分割 1. 二维平面绘图 % 创建一些二维数据 x 0:0.01:10; % x轴的数据点,从0到10,间隔为0.01 y sin(x); % y轴的数据点,是x的正弦…...
嵌入式开发四大平台介绍
MCU(Micro Control Unit)四大平台介绍) 单片机优点:缺点:总结: DSP digital signal processingARM优点:缺点:总结 FPGA什么事FPGA(集成元件库)FPGA开发方法—…...
《Python编程从入门到实践》day28
# 昨日知识点回顾 安装Matplotlib 绘制简单的折线图 # 今日知识点学习 15.2.1 修改标签文字和线条粗细 # module backend_interagg has no attribute FigureCanvas. Did you mean: FigureCanvasAgg? # 解决办法:matplotlib切换图形界面显示终端TkAgg。 #…...
STC8增强型单片机开发【定时器Timer⭐】
目录 一、引言 二、定时器基础知识 三、STC8定时器配置 四、代码示例 五、总结 一、引言 在单片机开发中,定时器(Timer)是一个极其重要的组件,它允许开发者基于时间触发各种事件或任务。STC8增强型单片机作为一款功能丰富的…...
相机Camera日志实例分析之二:相机Camx【专业模式开启直方图拍照】单帧流程日志详解
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了: 这一篇我们开始讲: 目录 一、场景操作步骤 二、日志基础关键字分级如下 三、场景日志如下: 一、场景操作步骤 操作步…...
django filter 统计数量 按属性去重
在Django中,如果你想要根据某个属性对查询集进行去重并统计数量,你可以使用values()方法配合annotate()方法来实现。这里有两种常见的方法来完成这个需求: 方法1:使用annotate()和Count 假设你有一个模型Item,并且你想…...
大语言模型如何处理长文本?常用文本分割技术详解
为什么需要文本分割? 引言:为什么需要文本分割?一、基础文本分割方法1. 按段落分割(Paragraph Splitting)2. 按句子分割(Sentence Splitting)二、高级文本分割策略3. 重叠分割(Sliding Window)4. 递归分割(Recursive Splitting)三、生产级工具推荐5. 使用LangChain的…...
多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验
一、多模态商品数据接口的技术架构 (一)多模态数据融合引擎 跨模态语义对齐 通过Transformer架构实现图像、语音、文字的语义关联。例如,当用户上传一张“蓝色连衣裙”的图片时,接口可自动提取图像中的颜色(RGB值&…...
使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装
以下是基于 vant-ui(适配 Vue2 版本 )实现截图中照片上传预览、删除功能,并封装成可复用组件的完整代码,包含样式和逻辑实现,可直接在 Vue2 项目中使用: 1. 封装的图片上传组件 ImageUploader.vue <te…...
重启Eureka集群中的节点,对已经注册的服务有什么影响
先看答案,如果正确地操作,重启Eureka集群中的节点,对已经注册的服务影响非常小,甚至可以做到无感知。 但如果操作不当,可能会引发短暂的服务发现问题。 下面我们从Eureka的核心工作原理来详细分析这个问题。 Eureka的…...
Netty从入门到进阶(二)
二、Netty入门 1. 概述 1.1 Netty是什么 Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty是一个异步的、基于事件驱动的网络应用框架,用于…...
mac 安装homebrew (nvm 及git)
mac 安装nvm 及git 万恶之源 mac 安装这些东西离不开Xcode。及homebrew 一、先说安装git步骤 通用: 方法一:使用 Homebrew 安装 Git(推荐) 步骤如下:打开终端(Terminal.app) 1.安装 Homebrew…...
基于鸿蒙(HarmonyOS5)的打车小程序
1. 开发环境准备 安装DevEco Studio (鸿蒙官方IDE)配置HarmonyOS SDK申请开发者账号和必要的API密钥 2. 项目结构设计 ├── entry │ ├── src │ │ ├── main │ │ │ ├── ets │ │ │ │ ├── pages │ │ │ │ │ ├── H…...
如何通过git命令查看项目连接的仓库地址?
要通过 Git 命令查看项目连接的仓库地址,您可以使用以下几种方法: 1. 查看所有远程仓库地址 使用 git remote -v 命令,它会显示项目中配置的所有远程仓库及其对应的 URL: git remote -v输出示例: origin https://…...

