<Columns>
    <asp:TemplateColumn HeaderText="ID">
        <ItemTemplate>
            <asp:Label ID="lblJob_id" Runat="server" Width="100%">
                <%#DataBinder.Eval(Container.DataItem,"job_id").ToString().Trim()%>
            </asp:Label>
       </ItemTemplate>
   </asp:TemplateColumn>
<asp:TemplateColumn HeaderText="内容">
    <ItemTemplate>
        <asp:Label ID="Label1" Runat="server" Width="100%">
             <%#DataBinder.Eval(Container.DataItem,"job_desc").ToString().Trim()%>
       </asp:Label>
   </ItemTemplate>
   <EditItemTemplate>
       <asp:TextBox ID="txtJob_desc" Runat="server" Width="100%">
            <%#DataBinder.Eval(Container.DataItem,"job_desc").ToString().Trim()%>
       </asp:TextBox>
   </EditItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="最低权限">
    <ItemTemplate>
        <asp:Label ID="lblMin_lvl" Runat="server" Width="100%">
             <%#DataBinder.Eval(Container.DataItem,"min_lvl").ToString().Trim()%>
         </asp:Label>
    </ItemTemplate>
    <EditItemTemplate>
        <asp:TextBox ID="txtMin_lvl" Runat="server" Width="100%">
             <%#DataBinder.Eval(Container.DataItem,"min_lvl").ToString().Trim()%>
         </asp:TextBox>
    </EditItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="最高权限">
    <ItemTemplate>
         <asp:Label ID="txtMax_lvl" Runat="server" Width="100%">
              <%#DataBinder.Eval(Container.DataItem,"max_lvl").ToString().Trim()%>
         </asp:Label>
   </ItemTemplate>
</asp:TemplateColumn>
<asp:EditCommandColumn ButtonType="LinkButton" EditText="编辑" CancelText="“取消"     UpdateText="更新"></asp:EditCommandColumn>
<asp:ButtonColumn Text="删除e" CommandName="Delete"></asp:ButtonColumn>
//////////////////////////////////////////////////////////////////////////////////////
当我按“编辑”的时候报错:******************************“TextBox”不能有类型为“DataBoundLiteralControl”的子级。 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Web.HttpException: “TextBox”不能有类型为“DataBoundLiteralControl”的子级。

解决方案 »

  1.   

    <asp:TextBox ID="txtMin_lvl" Runat="server" Width="100%" Text='<%# DataBinder.Eval(Container.DataItem,"min_lvl") %>' />
      

  2.   

    谢谢这位大哥!!!
    <asp:TextBox ID="txtMin_lvl" Runat="server" Width="100%" Text='<%# DataBinder.Eval(Container.DataItem,"min_lvl") %>' />没有Text这个属性这个属性是在<asp:text>这里的</asp:text>
    <asp:TextBox ID="txtMin_lvl" Runat="server" Width="100%"><%#DataBinder.Eval(Container.DataItem,"min_lvl").ToString().Trim()%></asp:TextBox>
      

  3.   

    TextBox 当然有 Text属性拉~你在设计界面拖一个TextBox出来,看看属性就知道了。
      

  4.   

    没有阿!大哥!!要在TextBox里面显示内容在<>....<>中间就行了!!就等于Text属性!我用的是VS。net 2003
      

  5.   

    系统已经告诉你了,不能这么用,问题是,如果你用
    <asp:TextBox...><%# %></asp:TextBox>,服务器端需要另生成一个控件,然后将其加到TextBox里Controls里,但这是不允许的,所以要用TextBox属性来做绑定
      

  6.   

    不错,代码里面是没有提供,但IE可以识别的.你要直接写text="",这是可行的,试下就知道了
      

  7.   

    是啊 <asp:TextBox ID="txtMin_lvl" Runat="server" Width="100%" Text='<%# DataBinder.Eval(Container.DataItem,"min_lvl") %>' /> 没问题的 
    再试一下
      

  8.   

    <asp:TextBox ID="txtMin_lvl" Runat="server" Width="100%" Text='<%# DataBinder.Eval(Container.DataItem,"min_lvl") %>' />这样做肯定没有错误的