datagrid隐藏一列,很急,在线等,求救!!! datagrid绑定两列值,一列为用户名称,一列为用户地址,我想用户地址列隐藏,但是也要生成HTML,因为我要在点用户名的时候弹出用户地址,而用DataGrid1.Columns[1].visible=false;不生成HTML,用JS取不到用户的地址,求救,急啊!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可以这样试试<td>用户名称绑顶</td><td id="td1">用户地址绑顶</td>把td1隐藏起来就行了 <asp:DataGrid ID="DataGrid1" runat="server" AutoGenerateColumns="False" Width="100%" OnItemDataBound="DataGrid1_ItemDataBound" AllowPaging="True" OnPageIndexChanged="DataGrid1_PageIndexChanged" BackColor="#DEBA84" BorderColor="#DEBA84" BorderStyle="None" BorderWidth="1px" CellPadding="3" CellSpacing="2" OnSelectedIndexChanged="DataGrid1_SelectedIndexChanged" > <Columns> <asp:TemplateColumn HeaderText="客户名称"> <ItemTemplate> <a href="#"><asp:Label ID="LblUserName" runat="server" Text='<%# Eval("username") %>'></asp:Label></a> </ItemTemplate> <HeaderStyle Width="100%" /> </asp:TemplateColumn> <asp:TemplateColumn> <ItemTemplate> <asp:Label style="display:none" ID="LblUserAdress" runat="server" Text='<%# Eval("address") %>'></asp:Label> </ItemTemplate> <ItemStyle Width="0px" CssClass="yincang" /> </asp:TemplateColumn> </Columns> </asp:DataGrid>这是绑定的代码,我不知道楼上的是什么意思啊! <ItemTemplate><tr><td> <a href="#"><asp:Label ID="LblUserName" runat="server" Text='<%# Eval("username") %>'></asp:Label></a></td><td id="id1"> <asp:Label style="display:none" ID="LblUserAdress" runat="server" Text='<%# Eval("address") %>'></asp:Label></td></tr> </ItemTemplate>====================然后想办法,把id1隐藏 obj.parentElement.parentElement.removeNode(true); DataGrid1.Columns[1].Attributs.Add("style","display:none") int i = 要隐藏的列数;DataGrid1.Columns[i].Visible = false; // ItemCreated 事件中protected void DataGrid1_ItemCreated(Object sender, DataGridItemEventArgs e) { e.Item.Cells[1].Attributs.Add("style","display:none"); } // 客户端 CSS 控制隐藏,不安全,毕竟数据还是呈现到客户端了 e.Row.Cells[3].Style.Add(HtmlTextWriterStyle.Display, "none"); // 设置单元格隐藏, TableCell.Visible=false, OK e.Row.Cells[4].Visible = false;摘自晓风残月摘客http://www.cnblogs.com/Jinglecat/archive/2007/07/10/813338.html Visiable=falseorWidth=0or css display:none; DataGrid1.Columns[1].Attributs.Add("style","display:none") @symbol441(≮西门潇洒≯) 哈,还是没有理解,我文中说的是,针对只需要服务器获取隐藏列的但是,对于客户单需要获取的,就不能 Visible=false 了,此时,该列根本就不呈现到客户端了考虑使用 e.Item.Cells[1].Attributs.Add("style","display:none");个人更喜欢,使用模版列中嵌入 隐藏域 来实现,通过其 id 来访问因为,我总会对 e.Item.Cells[1] 之类的使用 【索引】的避而远之,不便于后期维护,比如,后来你前面添加一列,你还得记得同步相关的 索引 DataGrid1.Columns[1].Attributs.Add("style","display:none") <style>.hide{display:none;}</style><列 cssClass=".hide" /> 实现隐藏 DataGrid1.Columns[1].Attributs.Add("style","display:none")DataGridColumns 不包含对Attributs的定义?????? DataGrid1.Columns[1].Attributs.Add("style","display:none")改成DataGrid1.Columns[1].Controls[0].Attributs.Add("style","display:none") DataGrid1.Columns[1].Controls[0]有Controls? DataGrid1.Columns[1].Attributs.Add("style","display:none")要在2005里面采可以??2003里面DataGrid1.Columns[1] 后面没有Attributs属性 net_lover(【孟子E章】) 就是猛 可以用模版列加一个HIDDEN把值放那里,想怎么取都行 这我肯定知道啊~我想确认下在03里面DataGrid1.Columns[1].AttributsColumns有Attributs属性? DataGrid.Columns[1].Attributs.Add("style","display:none")欢迎来看看我的网站:www.weblove21.com 21友缘交友网 <ItemStyle Width="0px"/>好像这样就可以。没有空试。麻烦楼主试了告诉我是否OK 隐藏?<asp:TemplateColumn Visible=False>.....</asp:TemplateColumn> DataGrid.Columns[1].Attributs.Add("style","display:none") DataGrid.Columns[1].Attributs.Add("style","display:none") 楼上的试过吗??DataGrid.Columns[1].Attributs.Add("style","display:none")能编译通过? <style>.hide{display:none;}</style><列 cssClass=".hide" /> 实现隐藏我也喜欢用这个 说不通的 把它放在RowDataBound事件里了没? 好了,结贴了,不过我也做一个总结:第一:用DataGrid1.Columns[1].visible=false,在客户端不会生成html代码,用JS取不到值。第二:如果用width="0px"来解决,里面的项是为O了,可是上面的表头还是有宽度,在页面程现的时候,隐藏的那一列还是有一定的宽度,只是里面没有了数据。第三:把这一列的控件隐藏,同上二,在页面上也会出现第二列,只是没有了项第四:可以用<ItemStyle CssClass="" /><HeaderStyle CssClass="" />定义样式来隐藏第五:就是孟老师的正解了。所以谢谢大家的回答,只能把分给孟老师了。谢谢大家的光临! 简单的SQL查询 安装VS2008出错 大家快帮帮我!我快疯了 分页后图片不能正常显示 未登录操作系统时,导出Excel出错 IP封锁的问题 问给 字串 截取的问题 新手 不要笑我 虚心请教 CSDN的投票结果图是怎么做的? 调用外部可执行程序。 再发一贴求真解:关于梅花雪日历控件的使用问题.谢谢,(明天就要回家了)急啊 B/S架构的程序中,如何处理后台定时周期性任务? 用while (dr.Read())时在没有数据的情况怎么处理 郁闷,我该不该培训
<td>用户名称绑顶</td><td id="td1">用户地址绑顶</td>
把td1隐藏起来就行了
<Columns>
<asp:TemplateColumn HeaderText="客户名称">
<ItemTemplate>
<a href="#"><asp:Label ID="LblUserName" runat="server" Text='<%# Eval("username") %>'></asp:Label></a>
</ItemTemplate>
<HeaderStyle Width="100%" />
</asp:TemplateColumn>
<asp:TemplateColumn>
<ItemTemplate>
<asp:Label style="display:none" ID="LblUserAdress" runat="server" Text='<%# Eval("address") %>'></asp:Label>
</ItemTemplate>
<ItemStyle Width="0px" CssClass="yincang" />
</asp:TemplateColumn>
</Columns>
</asp:DataGrid>
这是绑定的代码,我不知道楼上的是什么意思啊!
<a href="#"><asp:Label ID="LblUserName" runat="server" Text='<%# Eval("username") %>'></asp:Label></a>
</td><td id="id1">
<asp:Label style="display:none" ID="LblUserAdress" runat="server" Text='<%# Eval("address") %>'></asp:Label></td></tr>
</ItemTemplate>
====================
然后想办法,把id1隐藏
DataGrid1.Columns[i].Visible = false;
protected void DataGrid1_ItemCreated(Object sender, DataGridItemEventArgs e)
{
e.Item.Cells[1].Attributs.Add("style","display:none");
}
e.Row.Cells[3].Style.Add(HtmlTextWriterStyle.Display, "none");
// 设置单元格隐藏, TableCell.Visible=false, OK
e.Row.Cells[4].Visible = false;摘自晓风残月摘客
http://www.cnblogs.com/Jinglecat/archive/2007/07/10/813338.html
or
Width=0
or css display:none;
比如,后来你前面添加一列,你还得记得同步相关的 索引
DataGridColumns 不包含对Attributs的定义??????
DataGrid1.Columns[1].Attributs.Add("style","display:none")
改成
DataGrid1.Columns[1].Controls[0].Attributs.Add("style","display:none")
2003里面DataGrid1.Columns[1] 后面没有Attributs属性
就是猛
我想确认下在03里面DataGrid1.Columns[1].Attributs
Columns有Attributs属性?
欢迎来看看我的网站:www.weblove21.com 21友缘交友网
好像这样就可以。没有空试。麻烦楼主试了告诉我是否OK
<asp:TemplateColumn Visible=False>
.....
</asp:TemplateColumn>
能编译通过?
<style>.hide{display:none;}</style><列 cssClass=".hide" /> 实现隐藏我也喜欢用这个
第一:用DataGrid1.Columns[1].visible=false,在客户端不会生成html代码,用JS取不到值。
第二:如果用width="0px"来解决,里面的项是为O了,可是上面的表头还是有宽度,在页面程现的时候,隐藏的那一列还是有一定的宽度,只是里面没有了数据。
第三:把这一列的控件隐藏,同上二,在页面上也会出现第二列,只是没有了项
第四:可以用<ItemStyle CssClass="" /><HeaderStyle CssClass="" />定义样式来隐藏
第五:就是孟老师的正解了。
所以谢谢大家的回答,只能把分给孟老师了。谢谢大家的光临!