2012-08-09 51 views
0

所以我一直在尋找這個好幾天了,並且找不到一個好的答案,所以我想我會把它扔到這個SO專家,看看有沒有人想法。Gridview上每行的默認按鈕

我一直想在gridview編輯中獲得每行的默認按鈕。現在,我確實發現了following黑客工作,然而,它導致了我的網格(我使用RowCommand來處理我的更新和插入,而不是RowUpdating)其他更大的問題。

我目前正在使用VS 2008,在任何新版本中都有一個很好的乾淨的方法來爲正在編輯的行添加默認按鈕? 2008年有這樣一個好方法嗎?

感謝

編輯:

<asp:TemplateField SortExpression="State" HeaderText="State"> 
    <ItemTemplate > 
     <asp:Label ID="lblStte" runat="server" Text='<%# Bind("State") %>'></asp:Label>  
    </ItemTemplate> 

    <EditItemTemplate> 
     <asp:Label ID="lblState" runat="server" Text='<%# Bind("State") %>'></asp:Label> 
    </EditItemTemplate> 
</asp:TemplateField> 

<asp:TemplateField SortExpression="Comments" HeaderText="Comments"> 
    <ItemTemplate >  
     <asp:Label ID="lblComments" runat="server" Text='<%# GetSubstring(Eval("Comments"), 20) %>'> </asp:Label> 
    </ItemTemplate> 

    <EditItemTemplate> 
     <asp:TextBox ID="txtComments" runat="server"></asp:TextBox> 
    </EditItemTemplate> 
</asp:TemplateField>     

<asp:TemplateField HeaderText=""> 
    <ItemTemplate > 
     <asp:Button ID="btnSelect" CommandName="Edit" runat="server" Text="Select" /> 
     <asp:Button ID="btnATM" CommandName="GoTo" runat="server" Text="Go to" />   
    </ItemTemplate> 

    <EditItemTemplate> 
      <asp:Button ID="btnUpdate" CommandName="Update" runat="server" Text="Update" /> 
      <asp:Button ID="btnCancel" CommandName="Cancel" runat="server" Text="Cancel" /> 
    </EditItemTemplate> 
</asp:TemplateField>       

    </Columns> 

+0

你能說明你的'GridView'標記是什麼樣的嗎?這聽起來像你可以使用'TemplateFields'來實現這個功能,但是我想先看看你的標記。 – jadarnel27 2012-08-09 15:46:25

+0

@ jadarnel27:我正在使用templateFields,我已經將我的網格的一部分添加到了我的問題中(它的一個很大的一個,所以我不想粘貼整個東西) – Limey 2012-08-09 16:07:45

+0

我現在很困惑。什麼是「默認按鈕」應該做的?您現有的「btnUpdate」和「btnCancel」按鈕無法正常工作嗎? – jadarnel27 2012-08-09 16:19:28

回答

0

你爲什麼不只是使用這種風格,我覺得你使它更加混亂:

<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:"STRINGNAME"ConnectionString %>" ProviderName="<%$ConnectionStrings:ProjectCISConnectionString.ProviderName %>" 
      SelectCommand="SELECT * FROM CIS.CIS_TRANS ORDER BY ID ASC" 
      DeleteCommand="DELETE FROM CIS.CIS_TRANS WHERE ID = :ID" 
      InsertCommand="INSERT INTO CIS.CIS_TRANS (TRANS_CD,FUND_CD,BSA_CD,DP_TYPE,TRANS_CD_DESC) VALUES (:TRANS_CD,:FUND_CD,:BSA_CD,:DP_TYPE,:TRANS_CD_DESC)" 
      UpdateCommand="UPDATE CIS.CIS_TRANS SET TRANS_CD = :TRANS_CD, FUND_CD = :FUND_CD, BSA_CD = :BSA_CD, DP_TYPE = :DP_TYPE, TRANS_CD_DESC =:TRANS_CD_DESC WHERE ID = :ID"> 

     </asp:SqlDataSource> 

「字符串名稱」 ENTER沒有「」的你自己

如果你連接到一個SQL數據庫更改:到@

生病給你提供了我的外觀截圖,讓我知道如果你喜歡它。

enter image description here

+0

如何使用將SqlDataSource要給我默認按鈕動作在GridView? – Limey 2012-08-09 19:09:31