原文:WPF datagrid AutoGenerateColumns隐藏部分列

<DataGrid x:Name="gridWC"  ItemsSource="{Binding WorkCenterDataLis}"   AutoGenerateColumns="True"   >
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding IsHasExpend}" Visibility="Collapsed" Header="IsHasExpend"/>
<DataGridTextColumn Binding="{Binding FID}" Visibility="Collapsed" Header="FID"/>
<DataGridTextColumn Binding="{Binding ParientFID}" Visibility="Collapsed" Header="ParientFID"/>
</DataGrid>

之前使用的dev的gridcontrol,如果我的列bingding的字段与itemssource中的相同,而此列的Visibility设置为不可见,则界面显示的时候,这列就不可见。

但是用的DataGrid不支持这种功能,如果ItemsSource中也有IsHasExpend、FID、ParientFID,我AutoGenerateColumns设置为true,则会重复出现。

解决方法是使用DataGrid的AutoGeneratingColumn事件,在生成列的时候过滤掉不需要的列。

<DataGrid x:Name="gridWC"  ItemsSource="{Binding WorkCenterDataLis}"   AutoGenerateColumns="True" AutoGeneratingColumn="gridWC_AutoGeneratingColumn" >
<DataGrid.Columns>
<!--<DataGridTextColumn Binding="{Binding IsHasExpend}" Visibility="Collapsed" Header="IsHasExpend"/>
<DataGridTextColumn Binding="{Binding FID}" Visibility="Collapsed" Header="FID"/>
<DataGridTextColumn Binding="{Binding ParientFID}" Visibility="Collapsed" Header="ParientFID"/>-->
</DataGrid>
private void gridWC_AutoGeneratingColumn(object sender, DataGridAutoGeneratingColumnEventArgs e)
{
if (e.Column.Header.ToString()=="IsHasExpend"||
e.Column.Header.ToString() == "FID"||
e.Column.Header.ToString() == "ParientFID")
{
e.Cancel = true;
}
}

这样就不显示了。

WPF datagrid AutoGenerateColumns隐藏部分列的更多相关文章

  1. easyui datagrid 表格动态隐藏部分列的展示

    1.一套代码中,可能不同的项目情况都在用,但是可能不同的项目要求展示的datagrid列的内容并不一致,所以能够动态的显示部分datagrid列的内容. 即datagrid的中的某一列,这个项目要求显 ...

  2. WPF DataGrid常用属性记录

    WPF DataGrid常用属性记录 组件常用方法: BeginEdit:使DataGrid进入编辑状态. CancelEdit:取消DataGrid的编辑状态. CollapseRowGroup:闭 ...

  3. WPF datagrid 初学

    <Window x:Class="WpfDemo.WinDataGrid" xmlns="http://schemas.microsoft.com/winfx/20 ...

  4. WPF DataGrid显格式

    Guide to WPF DataGrid formatting using bindings Peter Huber SG, 25 Nov 2013 CPOL    4.83 (13 votes) ...

  5. 编写 WPF DataGrid 列模板,实现更好的用户体验

    Julie Lerman 下载代码示例 最近我在为一个客户做一些 Windows Presentation Foundation (WPF) 方面的工作. 虽然我提倡使用第三方工具,但有时也会避免使用 ...

  6. WPF DataGrid 样式设置

    隔行换色,鼠标单击,悬浮样式都有,其具体效果如图 1 所示. 图 1 WPF DataGrid 样式设置效果图 其中: 界面设计代码下所示 ? + 查看代码 1 2 3 4 5 6 7 8 9 10 ...

  7. WPF DataGrid 列宽填充表格方法

    WPF中使DataGrid 列宽填充表格方法,设置ColumnWidth属性为ColumnWidth="*"即可. 源码: <DataGrid AutoGenerateCol ...

  8. C# WPF DataGrid 分组(Group)

    原文:C# WPF DataGrid 分组(Group) 效果如图,每个列的名字可以自定义.我随便用了”File”和”Attachment Name”.  在Window的Resources里面设置S ...

  9. WPF DataGrid 样式分享

    原文:WPF DataGrid 样式分享 隔行换色,鼠标单击,悬浮样式都有 先看效果: 代码: <DataGrid AutoGenerateColumns="False" N ...

随机推荐

  1. 用 Flask 来写个轻博客 (3) — (M)VC_连接 MySQL 和 SQLAlchemy

    目录 目录 前文列表 扩展阅读 前言 Models 模型 SQLAlchemy 安装 SQLAlchemy 安装 Mysql 建立 SQLAlchemy 和 Mysql 的连接 前文列表 用 Flas ...

  2. spring4.3.5基本配置

    1.去官网下载必要的jar包,以及: 2.新建一个web项目,在Window->Java->Build Path->User Libraries 按照步骤1,2把spring的jar ...

  3. 自旋锁spinlock

    1 在单处理器上的实现 单核系统上,不存在严格的并发,因此对资源的共享主要是多个任务分时运行造成的. 只要在某一时段,停止任务切换,并且关中断(对于用户态应用程序,不大可能与中断处理程序抢临界区资源) ...

  4. LeetCode K个一组翻转链表

    题目链接:https://leetcode-cn.com/problems/reverse-nodes-in-k-group/ 题目大意 略. 分析 逆转每一段,然后和上一段与下一段衔接即可,加头结点 ...

  5. 面向连接的echo服务编程实例

    以下是echo_serv.c的源码,提供创建服务端,绑定套接字到本机IP的8080端口,当收到客户端发送的字符串就在屏幕上打印出来,并且把字符串发送给客户端 // echo_serv.c – gcc ...

  6. 完美编译街机模拟器MAME(Android版)基于MAME4all

    重新编译MAME4droid源码 github上开源项目MAME4all可将MAME模拟器运行在iOS和Android上,还有一个比较有名的叫MAME4droid(MAME for android), ...

  7. js正则判断实现18位数字

    js实现18位数字 var stuCardReg = /^[0-9]{18}/; var stuCard = $('.inp).val();//获取input框中的数值 if (!stuCardReg ...

  8. leetcood学习笔记-58-最后一个单词的长度

    题目描述: 第一次解答: class Solution: def lengthOfLastWord(self, s: str) -> int: L=s.strip().split(" ...

  9. 针对list<object>中的对象数据的一些简单处理

    一    首先创建一个实体类(PersonData ): package hello; public class PersonData { String Id; String Name; String ...

  10. delphi RichView的使用介绍

    RichView 组件 由 9 个组件模块组成,分别是: 1.TRVStyle:主要是定义RICHVIEW样式,定义后,其它RIHCVIEW都可以引用此样式.  2.TRichView :主要用于显示 ...