
 <asp:TemplateField HeaderText="名称">
                    <ItemTemplate>
                        <asp:Label ID="Lab_name" runat="server" Text='<%# Eval("AuthorityName") %>'></asp:Label>
                    </ItemTemplate>
                    <EditItemTemplate>
                        <asp:TextBox ID="txt_name" Width="120" MaxLength="30" CssClass="inputbox" runat="server"
                            Text='<%# Eval("AuthorityName") %>'></asp:TextBox>
                    </EditItemTemplate>
                    <ItemStyle HorizontalAlign="Left" Wrap="False" />
                    <HeaderStyle HorizontalAlign="Center" Wrap="false" />
                </asp:TemplateField>
填充的gridview ,然后报Eval()、XPath() 和 Bind() 这类数据绑定方法只能在数据绑定控件的上下文中使用。就是红色代码的位置。在线等了 求解决啊
这是后台代码
/// <summary>
        /// 将数据绑定到DataSet
        /// </summary>
        public void BindOrder()
        {
            DataSet ds = bll.GetAuthorityList("", "order by AuthorityOrder asc");
            if (ds.Tables[0].Rows.Count == 0)
                GridViewMsg.InnerText = "无记录";
            else
                GridViewMsg.InnerText = "共有" + ds.Tables[0].Rows.Count + "条记录";
            AuthorityLists.DataSource = ds;
            AuthorityLists.DataBind();
        }
DataBinder.Eval
写成这样试试
图片不能显示
下面代码有打出来啊。
应该没什么问题吧 你确定是红色的位置?
对,就是红色的地方。
@百年老妖:
你先把 <EditItemTemplate>... </EditItemTemplate> 这块拿掉 试试
@Yu: 后台也没什么不对的
多点代码,这段代码没看出什么问题。
后台要不要?
@百年老妖: 呵呵,还是没看出什么问题~
明显不是后台报的错,页面写错了 细心点 其实我自己也不细心 啊哈哈~