2012-09-20 120 views
0

我有一個ASPxGridView填充一些事務。觸發ASPxGridView RowClick事件並在服務器上處理它

<dx:ASPxGridView ID="grdCapTrans" runat="server" ClientIDMode="AutoID" Width="100%" EnableRowsCache="false"> 
</dx:ASPxGridView> 

當它的人口,我想給用戶選擇點擊行的行查看詳細的自由。詳細信息應顯示在gridview下面的文本框中。

如何觸發並在服務器上處理?

+0

試試本演示:[通過單擊狀態欄按鈕或雙擊某一行切換到編輯模式](http://www.devexpress.com/Support/Center/e/E7.aspx) – Filip

回答

0

您可以使用RowCommand event

鏈接:http://documentation.devexpress.com/#AspNet/DevExpressWebASPxGridViewASPxGridView_RowCommandtopic

<dx:ASPxGridView ID="grid" 
runat="server" 
ClientInstanceName="grid" 
AutoGenerateColumns="false" 
onrowcommand="grid_RowCommand" > 
    <Columns> 
    <dx:GridViewCommandColumn ShowSelectCheckbox="true" VisibleIndex="0" ButtonType="Button" /> 
    </Columns> 
</dx:ASPxGridView> 

代碼背後:

protected void grid_RowCommand(object sender, ASPxGridViewRowCommandEventArgs e) 
{ 
    ..... 
} 

您DATAS

的綁定
grid.DataSource = ...; 
grid.DataBind(); 

鏈接:http://documentation.devexpress.com/#AspNet/DevExpressWebASPxGridViewASPxGridView_RowDeletingtopic

+0

我嘗試過,但我沒有從數據庫中獲取數據。我得到的是每行上的複選框。我希望它使用在運行時綁定的數據。 – Tamseyc

+0

您必須綁定您的控件 –

+0

grid.DataSource = ...; grid.DataBind(); –

0
<asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional" > 
    <Triggers> 
    <asp:AsyncPostBackTrigger ControlID="cboTransType" EventName="SelectedIndexChanged" /> 
    </Triggers> 
     <ContentTemplate> 
     <dx:ASPxGridView ID="grdCapTrans" runat="server" ClientIDMode="AutoID" Width="100%" EnableRowsCache="false" ClientInstanceName="grdCapTrans" onselectionchanged="grdCapTrans_SelectionChanged" 
     EnableCallBacks="false" KeyFieldName="ID" AutoGenerateColumns="false"> 
     <Columns> 
     <dx:GridViewCommandColumn ShowInCustomizationForm="True" VisibleIndex="0" ButtonType="Button" ShowSelectCheckbox="true"> </dx:GridViewCommandColumn> 
     <dx:GridViewDataTextColumn FieldName="ID" Name="ID" ShowInCustomizationForm="True" VisibleIndex="1"></dx:GridViewDataTextColumn> 
     <dx:GridViewDataTextColumn FieldName="Description" Name="Description" ShowInCustomizationForm="True" VisibleIndex="2"></dx:GridViewDataTextColumn> 
     <dx:GridViewDataTextColumn FieldName="Amount" Name="Amount" ShowInCustomizationForm="True" VisibleIndex="5"></dx:GridViewDataTextColumn> 
     <dx:GridViewDataTextColumn FieldName="Date" Name="Date" ShowInCustomizationForm="True" VisibleIndex="4"></dx:GridViewDataTextColumn> 
     <dx:GridViewDataTextColumn FieldName="Capturer" Name="Capturer" ShowInCustomizationForm="True" VisibleIndex="3"></dx:GridViewDataTextColumn>                      
     <dx:GridViewDataTextColumn FieldName="Status" Name="Status" ShowInCustomizationForm="True" VisibleIndex="6"></dx:GridViewDataTextColumn>                                        

     </Columns> 
     <SettingsBehavior ProcessSelectionChangedOnServer="true" AllowFocusedRow="true" AllowSelectByRowClick="true" EnableRowHotTrack="true" /> 

     </dx:ASPxGridView> 
     <p> 
     </p> 
    </ContentTemplate> 
    </asp:UpdatePanel> 

代碼後面

protected void grdCapTrans_SelectionChanged(object sender, EventArgs e) 

{ 

    UpdatePanel1.Update(); 
    txtFullName.Text = grdCapTrans.GetSelectedFieldValues("Description")[1].ToString(); 

    message.InnerHtml = "Happy"; 


} 

消息元件是在發現updatepanel1一個div。如果selectionChanged事件觸發,我期待顯示「Happy」消息。令我驚訝的是,它沒有。

什麼錯了,怎麼可以糾正。

+0

閱讀[ASPxGridView.SelectionChanged事件](http://documentation.devexpress.com/#AspNet/DevExpressWebASPxGridViewASPxGridView_SelectionChangedtopic)和[ASPxGridView.FocusedRowChanged事件](HTTP:/ /documentation.devexpress.com/#AspNet/DevExpressWebASPxGridViewASPxGridView_FocusedRowChangedtopic)。順便說一句,你應該更新你最初的問題,而不是回答一些不是答案的東西。當只有內部控件是ASPxGridView時,你使用UpdatePanel的動機是什麼?你有沒有讀過我對最初問題的評論文章? – Filip

+0

菲利普,我只是在嘗試的東西。我是ASP.NET新手。通過發佈那些不是答案的東西,就像展示我迄今爲止所做的一樣。我已閱讀文件,但哎呀,我不能做它,我GOOGLE了很多的工作人員,但都是徒勞。 – Tamseyc

相關問題