datagrid的ColumnHeaderVisible
DataGridTableStyle ts = new DataGridTableStyle();
DataGridColumnStyle colStyle1 =new DataGridTextBoxColumn();
colStyle1.MappingName = "ID";
colStyle1.HeaderText="ID";
ts.GridColumnStyles.Add(colStyle1);ts.RowHeadersVisible=false;
ts.ColumnHeadersVisible= false;
dataGrid1.TableStyles.Add(ts);其中ts.RowHeadersVisible=false;有效果,没有了行的表头。
ts.ColumnHeadersVisible= false;没有任何反应,仍然有列的表头。我就不明白ColumnHeadersVisible到底干什么的?其实我是想让datagrid只有表格,没有行和列的表头。不知道有没有这样的控件,还是datagrid 通过什么设置可以达到目的。

解决方案 »

  1.   

    DataGrid本身就有两个关于行、列表头是否可见的属性
    DataGrid.ColumnHeadersVisible = false;
    DataGrid.RowHeadersVisible = false;
    试试看
      

  2.   

    对啊  既然楼主不想显示列的表头(就是行记录的最上面一行)
    那么你为什么下面这样呢?
    datagrid的ColumnHeaderVisible
    DataGridTableStyle ts = new DataGridTableStyle();
    DataGridColumnStyle colStyle1 =new DataGridTextBoxColumn();
    colStyle1.MappingName = "ID";
    colStyle1.HeaderText="ID";
    直接就按楼上说的去办!而不是:DataGridTableStyle.ColumnHeadersVisible = false;
      

  3.   

    我还想问问大家有没有用过纯表格的控件,没有表头表尾。就像word中特殊字符的界面一样。只有一个一个的cell。datagrid真奇怪,
    DataGrid.ColumnHeadersVisible = false;
    ts.RowHeadersVisible=false;
    这两个结合着用才管用。试出来了,不过好像还不能满足要求,所以还想象大家要上面所说的控件。
      

  4.   

    DataGrid.CaptionVisible = false;//这样去掉表的标题框
    DataGrid.ReadOnly = true;//可以去掉表尾
    再用上面的方法把行、列表头去掉,就可以了。
    不过这样做的话,DataGrid就是只读的不能编辑了,需要自己另外编程实现对DataGrid的增、删、改。