如何在Formview上同时拥有EditItemTemplate和ItemTemplate?

时间:2012-05-03 14:31:55

标签: asp.net vb.net formview

我在formview中有以下内容,我希望能够显示信息,如果有人进行更改,我应该通过点击update来更新这些信息。我是asp.net开发的新手,我怎么能这样做?我一直有异常,说frm1期待编辑模式。

提前致谢

<<asp:Formview D="FormView1" runat="server" DataSourceID="SqlDesc" ID="frm1">
   <ItemTemplate>
        <table>  
        <tr>
            <td>
                Description:<br />
            </td>
            <td style="">
                <asp:TextBox ID="DescTbox" runat="server" Width="450px" TextMode="MultiLine" Text='<%# Bind("Description") %>' Enabled="True" Rows="4"></asp:TextBox>                 
            </td>                
        </tr>
        <tr>
        <td></td>
        <td>
           <asp:Button ID="UpdateButton" runat="server" CausesValidation="True" CommandName="Update" Text="Update"> </asp:Button>
        </td>                 
        </tr>
    </table>
    </ItemTemplate>
    <EditItemTemplate>
     <table>
        <tr>
            <td>
                Description:<br />
            </td>
            <td style="">
                <asp:TextBox ID="DescTbox" runat="server" Width="450px" TextMode="MultiLine" Text='<%# Bind("Description") %>' Enabled="True" Rows="4"></asp:TextBox>                 
            </td>                
        </tr>
        <tr>
        <td></td>
        <td>
           <asp:Button ID="UpdateButton" runat="server" CausesValidation="True" CommandName="Update" Text="Update"> </asp:Button>
        </td>                 
        </tr>
    </table>

    </EditItemTemplate>
    </asp:Formview>

2 个答案:

答案 0 :(得分:1)

如果可能,您的<Itemtemplate>应提供数据的只读视图,<EditItemTemplate>中仅提供更新。然后,您需要将行置于编辑模式,以便通过在表格上设置EditRowIndex来编辑行。

答案 1 :(得分:0)

我必须将DefaultMode添加为修改并使用EditItemTemplate代替ItemTemplate

 <asp:Formview ID="FormView1" runat="server" DefaultMode="Edit" > 
        <EditItemTemplate> ...
        </EditItemTemplate>  <asp:Formview>

由于