GridView模板列取值问题 将这个 <%#Eval("TextName").ToString()%>直接放到gridview模板列中,后台如何取值?请各位看管指教。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 e.Row.Cells[x].Text你最好放Label里面,后台FindControl好处理 不放label,直接将<%#Eval("TextName").ToString()%>放模板列如何在后台取值?? <asp:TemplateField HeaderText="xxxx" ItemStyle-HorizontalAlign="Center"> <ItemTemplate> <%#Eval("Text").ToString()%> </ItemTemplate> <ItemStyle HorizontalAlign="Center" ForeColor="Red"> </ItemStyle> </asp:TemplateField> 本帖最后由 net_lover 于 2012-07-03 10:21:19 编辑 这样可以的(GridView1.Rows[i].Cells[0].Controls[0] as DataBoundLiteralControl ).Text例子<%@ Page Language="C#" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><script runat="server"> protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { System.Data.DataTable dt = new System.Data.DataTable(); System.Data.DataRow dr; dt.Columns.Add(new System.Data.DataColumn("Id", typeof(System.Int32))); dt.Columns.Add(new System.Data.DataColumn("Name", typeof(System.String))); for (int i = 0; i < 8; i++) { dr = dt.NewRow(); dr[0] = i; dr[1] = (i * i).ToString(); dt.Rows.Add(dr); } GridView1.DataSource = dt; GridView1.DataBind(); } } protected void Button1_Click(object sender, EventArgs e) { for (int i = 0; i < GridView1.Rows.Count; i++) { Response.Write("<li>" + (GridView1.Rows[i].Cells[0].Controls[0] as DataBoundLiteralControl).Text); } }</script><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <title></title></head><body> <form id="form1" runat="server"> <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"> <Columns> <asp:TemplateField> <ItemTemplate> <%#Eval("Name")%> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView> <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" /> </form></body></html> 隐藏某一行的问题 用户控件怎样调用外部js文件 请高手指教,不甚感激!!! 动态网站怎样才能快捷生成静态网站?请高手门多多指点 请大家帮忙看看这个错误出在哪里!谢谢 求助:出现错误:试图运行项目时出错:无法在web服务器上启动调试,你没有调试该服务器的权限。验证你是服务器上“Debugger Users”组的 高手指点:DataGrid事件不能触发(分页事件,和排序事件) 请高手指点,怎样得到传递的参数?在线等待? 请教同一个代码 不同浏览器访问 结果不一样 添加节点(结帖率100%,在线等!!!) 索引超出范围。必须为非负值并小于集合大小。 高分求救!!!自定义分页,点击“下一页”的时候无法显示数据,代码如下,请高手指导。
如何在后台取值??
<asp:TemplateField HeaderText="xxxx" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<%#Eval("Text").ToString()%>
</ItemTemplate>
<ItemStyle HorizontalAlign="Center" ForeColor="Red">
</ItemStyle>
</asp:TemplateField>
(GridView1.Rows[i].Cells[0].Controls[0] as DataBoundLiteralControl ).Text例子<%@ Page Language="C#" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server"> protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
System.Data.DataTable dt = new System.Data.DataTable();
System.Data.DataRow dr;
dt.Columns.Add(new System.Data.DataColumn("Id", typeof(System.Int32)));
dt.Columns.Add(new System.Data.DataColumn("Name", typeof(System.String))); for (int i = 0; i < 8; i++)
{
dr = dt.NewRow();
dr[0] = i;
dr[1] = (i * i).ToString();
dt.Rows.Add(dr);
}
GridView1.DataSource = dt;
GridView1.DataBind();
}
} protected void Button1_Click(object sender, EventArgs e)
{
for (int i = 0; i < GridView1.Rows.Count; i++)
{
Response.Write("<li>" + (GridView1.Rows[i].Cells[0].Controls[0] as DataBoundLiteralControl).Text);
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<%#Eval("Name")%>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
</form>
</body>
</html>