用的VS2003,做的ASP.NET的网页,现在有一DATAGRID,其中有一模板列是需要修改的,已经作成按编辑之后,该列变为TEXTBOX的可编辑状态,然后按更新就更新好了.现在想要实现在DATAGRID显示的时候直接该列就是TEXTBOX的可编辑状态,就是说想把"按编辑"这个过程省略掉,该怎么实现呢?

解决方案 »

  1.   


      结帖吧:) 把 DefaultMode ="Edit"
    例:
    <asp:DetailsView ID="DetailsView1" runat="server" AutoGenerateRows="False" DataSourceID="ObjectDataSource1" Height="50px" Width="592px" DefaultMode="Edit">
      

  2.   

    <asp:TemplateColumn HeaderText="数量"> <ItemTemplate>     <%# DataBinder.Eval(Container, "DataItem.abc") %> </ItemTemplate>      <EditItemTemplate> <asp:TextBox runat="server" Width='60' id='Num' Text='<%# DataBinder.Eval(Container, "DataItem.abc") %>'> </asp:TextBox>      </EditItemTemplate>可是在TEXTBOX中没有DefaultMode这个属性啊
      

  3.   

    <asp:TemplateColumn HeaderText="数量">
    <ItemTemplate>
    <%# DataBinder.Eval(Container, "DataItem.T01_PriceNow") %>
    </ItemTemplate>
    <EditItemTemplate>
    <asp:TextBox runat="server" Width='60' id='Num' Text='<%# DataBinder.Eval(Container, "DataItem.T01_PriceNow") %>'>
    </asp:TextBox>
    </EditItemTemplate>这个是目前的代码
      

  4.   

    不好意思,没注意到你的是2003  在2003里只要设置 EditItemIndex="1" 等于你要的行数就行了。  或在代码中指定也行。
      

  5.   

    这个属性设置不是一次只能指定一行,现在有很多行,还有分页,还有没有更方便的方法让他全部变成TEXTBOX状态呢?
      

  6.   

    <ItemTemplate>
    放textbox////////////////
    </ItemTemplate>
      

  7.   

    用模板列再绑定数据就可以啦...<asp:TextBox text="<%# DataBinder.Eval(...)"...></...>
      

  8.   

    用模版列,然后在datagrid的属性中加上onitemcommand="mydatagrid_command",在mydatagrid_command事件中写你要更新的代码。
    如下:
    页面文件
    <asp:datagird id="mydatagrid" runat="server" autogeneratecolumns="false" onitemcommand="mydatagrid_command">
      <columns>
        <asp:templatecolumn headertext="数据">
          <itemtemplate>
            <asp:textbox id="textbox1" runat="server"/>
          </itemtemplate>
        </asp:templatecolumn>
        <asp:buttoncolumn headertext="操作" text="更新" commandname="update"/>
      </columns>
    </asp:datagrid>程序文件
    sub mydatagrid_command(sender as object,e as datagridcommandeventargs)
      '这里写更新数据的代码
    end sub
      

  9.   

    把TEXTBOX放在模板列或选择列里面就可以实现了