这种问题都不知道碰到多少遍啦,都是一些小问题,自己多钻下
http://singlepine.cnblogs.com/articles/266538.html
这里有个很齐全的datagrid实例,你自己多琢磨琢磨,对以后你碰到的问题也会有帮助!
补充一点,也是初学者容易忘记的
dropdownlist的autopostback属性记得改为true
http://singlepine.cnblogs.com/articles/266538.html
这里有个很齐全的datagrid实例,你自己多琢磨琢磨,对以后你碰到的问题也会有帮助!
补充一点,也是初学者容易忘记的
dropdownlist的autopostback属性记得改为true
在窗体的声明区域中声明 DataGridTableStyle 类的新实例。将 DataGridTableStyle 的 MappingName 属性设置为希望应用样式的数据源中的表。下面的代码示例使用 DataGrid.DataMember 属性(假定已经设置了它)。向数据网格的表样式集合中添加新的 DataGridTableStyle 对象。通过将列的 Width 属性设置为 0,并指定要隐藏的列的列索引来隐藏列。 Visual Basic 复制代码
' Declare a new DataGridTableStyle in the
' declarations area of your form.
Dim ts As DataGridTableStyle = New DataGridTableStyle()Sub HideColumn()
' Set the DataGridTableStyle.MappingName property
' to the table in the data source to map to.
ts.MappingName = DataGrid1.DataMember ' Add it to the datagrid's TableStyles collection
DataGrid1.TableStyles.Add(ts) ' Hide the first column (index 0)
DataGrid1.TableStyles(0).GridColumnStyles(0).Width = 0
End Sub
C# 复制代码
// Declare a new DataGridTableStyle in the
// declarations area of your form.
DataGridTableStyle ts = new DataGridTableStyle();private void hideColumn()
{
// Set the DataGridTableStyle.MappingName property
// to the table in the data source to map to.
ts.MappingName = dataGrid1.DataMember; // Add it to the datagrid's TableStyles collection
dataGrid1.TableStyles.Add(ts); // Hide the first column (index 0)
dataGrid1.TableStyles[0].GridColumnStyles[0].Width = 0;
}
这是MSDN的代码,你好好看看。看懂了你就知道该怎么做了!
{
DataGrid.Columns[0].Visible = true;
}
else
{
DataGrid.Columns[0].Visible = false;
}不好意思,在WebForm下面用这个方法!
我上面的方法是Winform里的!
和
amandag(高歌)
的答案都可以,当要显示 "性别","所在省","入职时间"等字段的 任一字段改成显示任N个字段时,又该怎么办呢?也就是说有N个dropdownlist.请大哥帮忙解决一下,这个问题总共300分,当高分赠送,谢谢
说的是啥话。听不明白 "id","姓名","性别" datagrid上显示这三个字段信息下拉列表里显示其余的
所在省_________辽宁
入职时间_______2004-12-10
wzd24(牧野)(衣带渐宽终不悔,为伊消得人憔悴) 的方法真不可取,隐藏列并没有减少下载量!
————————————————————————————————————————————
上面设置“DataGrid.Columns[0].Visible = false;”类的代码完全可以。这会“减少下载量”,设置为 Visible=false 的列,不论标题、内容、分隔行、页脚,统统不下载那一列。如果跑到html上去设置隐藏或者设置列宽为0(设置过小的列宽其实并不能在浏览器上精确显示,但我们暂且假设可以显示),才不能减少下载量。
wzd24(牧野)(衣带渐宽终不悔,为伊消得人憔悴) 的方法真不可取,隐藏列并没有减少下载量!
----------------------------------------------------------------------------
你是怎么样得出的结论的? 呵呵…………看来实践经验还是不足哦。To 楼主:
你可以用CheckBoxList或者其它可以多选的控件代替DropDownList嘛!
当点击dropdownlist改时,代替的字段也能在点击的这一列显示,而不跑到其他位置次序
每个value 写一个SQL语句,写成你需要显示的字段。
……虽然每次都需要提交服务器。。但是可以实现
2、用客户端来解决。。JS。。
datagrid把字段全部显示。。然后在DROPDOWNLIST里加载JS把相应的都隐藏起来
不过最好还是把所有的字段列出来 通过dropdownlist的只要设置要显示的列就ok了 感觉不需要去设置其value去连接数据库。。多次连接效率有所下降~
当点击dropdownlist改时,代替的字段也能在点击的这一列显示,而不跑到其他位置次序
----------------------------------
| id | name | sex | didian |
----------------------------------
| 1 | 张三 | 男 | 广东 |
----------------------------------
| 2 | 李四 | 男 | 北京 |
----------------------------------
| 3 | 王五 | 女 | 山东 |
----------------------------------
其中,sex和didian两列的页眉为dropdownlist,dropdownlist中包含一些字段名,如:sex,didian,
rztime,age(年龄),job(职务)等;当点击sex列页眉的dropdownlist,选择job字段时,如果隐藏的job字段是在didian字段之后,那么job字段显示时,就会移到didian列后面,能不能显示时,让它的位置还是在原来的sex列位置处.