原文: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. 17、javaWebService,的使用

    2. 实质上分三步操作: 创建一个服务器端(电力系统),和一个客户端(人员系统) 第一步:使用服务器端提供的接口,生成.wsdl文件 第二步:使用.wsdl文件,在电力系统中生成服务器端的代码 第三步 ...

  2. Netty 相关目录

    Netty 相关目录 Netty 源码学习--客户端流程分析 Netty 源码学习--服务端流程分析 Netty 源码分析--ChannelPipeline Netty 源码学习--EventLoop ...

  3. Apache POI环境设置

    本章将指导完成Apache POI在Windows和Linux系统为基础的设置过程. Apache POI可以轻松地安装和集成,下面没有任何复杂的设置过程,通过几个简单步骤,目前Java环境,用户管理 ...

  4. swiper 窗口宽度变化,页面宽度高度变化 导致自动滑动 解决方案

    又又又又是swiper问题 背景: pc端项目,rem布局,swiper作为步骤条(上一步,下一步)的功能. 发现在屏幕拖动,宽高的变化,窗口大小的变化 会引起swiper自动滑动(到下一步). 在下 ...

  5. 用Cython加速Python代码

    安装Cython pip install Cython 如何使用 要在我们的笔记本中使用Cython,我们将使用IPython magic命令.Magic命令以百分号开始,并提供一些额外的功能,这些功 ...

  6. 树上倍增 hdu 2586

    参考博客: 代码: #include<stdio.h> #include<iostream> #include<algorithm> #include<mat ...

  7. 将一个压缩文件分成多个压缩文件;RAR文件分卷

    有时候需要上传压缩文件,但是限制了单个文件的大小,那我们怎么才能将一个比较大的压缩文件分割成多个压缩文件,从而符合要求的进行文件的上传呢?这里小编告诉你一个技巧. 工具/原料 电脑 winrar(一般 ...

  8. linux 下格式化命令小记

    mkfs.ext4 /dev/sda1    # 格式化为ext4分区mkfs.ext3 /dev/sda1    # 格式化为ext3分区mkfs.ext2 /dev/sda1    # 格式化为e ...

  9. 【学术篇】CF935E Fafa and Ancient Mathematics 树形dp

    前言 这是一道cf的比赛题.. 比赛的时候C题因为自己加了一个很显然不对的特判WA了7次但找不出原因就弃疗了... 然后就想划水, 但是只做了AB又不太好... 估计rating会掉惨 (然而事实证明 ...

  10. 伪类元素before&after

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...