原文: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;
}
}

这样就不显示了。

最新文章

  1. Android Retrofit 2.0 使用-补充篇
  2. js replaceAll
  3. 锤子手机T2 屏幕录像文件保存在哪里?
  4. 【Beta版本】冲刺-Day7
  5. Ruby On Rails 环境搭建MySQL数据库连接
  6. poj1276 多重背包
  7. 1008. Image Encoding(bfs)
  8. Chrome浏览器安装插件提示(net::ERR_NAME_NOT_RESOLVED)
  9. sqlserver 2012 重启是 ID 自动增长 1000的问题
  10. 2假动作,数据缓冲,CCEaseExponential,CCEaseElastic,CCEaseBounce,CCCallFunc,funcNCallBack,funcNDCallBack,funcO
  11. 一个好看的Input样式
  12. linux诡异的半连接(SYN_RECV)队列长度
  13. [Cocos2d-x]CCSpriteFrameCache的使用
  14. 如何更改Java括号中的默认对齐
  15. flask中jinjia2模板引擎使用详解1
  16. js 幻灯片
  17. 基于vue移动音乐webapp跨域请求失败的问题解决
  18. ArcGIS案例学习笔记3_1_地理配准案例_图面控制点
  19. Oracle —— 如何执行SQL文件
  20. ESP8266/ESP32模块晶振频偏调试

热门文章

  1. CSS:CSS 列表
  2. 卷积神经网络学习笔记(CNN)
  3. swagger使用详解
  4. Promise 的深度学习
  5. display default HeapSize of Java VM
  6. Storm框架设计
  7. xpdf -Portable Document Format(PDF)文件阅读器
  8. WXML 数据绑定
  9. 笔记37 Spring Web Flow——流程的组件
  10. Ruby 环境