2015-11-11 26 views
0

這是我的屏幕: enter image description here獲取文本檢查排不數據庫字段ASP.NET,DevExpress的

首先,我編輯的文本在名稱列中的某些細胞。 接下來我檢查編輯行中的文本框。 如何獲取選中行中的名稱列的文本。 我想:(無更新數據庫)後,我點擊按鈕的Gettext中,在消息框中選中行顯示名稱列值單元格

這是ASPX代碼:

<dx:ASPxGridView Theme="Aqua" ID="gridThuTien" ClientInstanceName="gridThuTien" 
    KeyFieldName="TienHDKHId" runat="server" Width="100%" 
    OnCustomCallback="gridThuTien_CustomCallback" 
    OnSummaryDisplayText="gridThuTien_SummaryDisplayText" 
    OnHtmlRowCreated="gridThuTien_HtmlRowCreated"> 
    <Columns> 
     <dx:GridViewDataTextColumn Caption="TienHDKHId" FieldName="TienHDKHId" Width="120px" Visible="false"> 
      <CellStyle HorizontalAlign="Left" VerticalAlign="Middle"></CellStyle> 
      <HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" /> 
     </dx:GridViewDataTextColumn> 
     <dx:GridViewDataTextColumn Caption="Name" FieldName="Name" Width="120px" > 
      <CellStyle HorizontalAlign="Left" VerticalAlign="Middle"></CellStyle> 
      <HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" /> 
      <Settings AutoFilterCondition="Contains" /> 
     </dx:GridViewDataTextColumn> 
     <dx:GridViewCommandColumn ShowSelectCheckbox="true" Width="50px" > 
      <HeaderTemplate> 
       <input type="checkbox" name="cbxSelect" runat="server" enableviewstate="true" id="checkAll" title="All select/ unselect" 
        onclick="gridThuTien.SelectAllRowsOnPage(this.checked);" /> 
      </HeaderTemplate> 
      <HeaderStyle HorizontalAlign="Center" /> 
     </dx:GridViewCommandColumn> 
    </Columns> 
    <SettingsEditing Mode="Batch"></SettingsEditing> 
</dx:ASPxGridView> 
+0

你試過[ASPxGridView - 獲取選定行(https://www.devexpress.com/Support/Center/Question/Details/ Q316186) –

回答

0

ASPxGridView不提供這是一個直接的方法。作爲解決方案,您可以撥打方法 您的ASPxGridView的關鍵字段,以收集所選行的關鍵值 行。你可以通過完整的示例 - How to use a GetSelectedFieldValues method to obtain values of several columns at once有關此主題的完整信息..

然後,您可以通過這個列表循環,並通過ASPxGridView.GetRowValuesByKeyValue方法加載必要的字段值。

enter image description here

protected void ASPxButton1_Click(object sender, EventArgs e) { 
    List<object> fieldValues = ASPxGridView1.GetSelectedFieldValues(new string[] { "ProductID", "ProductName" }); 
    foreach (object[] item in fieldValues) { 
      ASPxListBox1.Items.Add(item[0].ToString()); 
      ASPxListBox2.Items.Add(item[1].ToString()); 
    } 
} 

參考文獻:
ASPxGridView - How to get selected Row indexes
Getting the Checkbox Ids in DexExpress AspxGridView
How to get field value of selected Row Devexpress GridView?
how to get value of selected row in aspxgridview devexpress - 回調方法..

編輯:
對於批量更新,您應該在運行時處理ASPxGridView.BatchUpdate事件。此事件的參數包含執行批量更新操作的所有必要數據。如果不需要更新操作的默認處理,請將ASPxDataBatchUpdateEventArgs.Handled屬性設置爲false。

protected void Grid_BatchUpdate(object sender, ASPxDataBatchUpdateEventArgs e) { 
     if(!BatchUpdateCheckBox.Checked) 
      return; 

     foreach(var args in e.InsertValues) 
      InsertNewItem(args.NewValues); 
     foreach(var args in e.UpdateValues) 
      UpdateItem(args.Keys, args.NewValues); 
     foreach(var args in e.DeleteValues) 
      DeleteItem(args.Keys, args.Values); 

     e.Handled = true; 
    } 

參考文獻:
How to perform Batch update if ASPxGridView is bound to a custom data source at runtime
ASPxGridView - A simple Batch Editing implementation
Bulk Edit Update Multiple Rows in ASP.Net GridView using CheckBoxes

+0

謝謝,但這種方式會得到舊數據,我想要編輯數據。 我需要編輯數據來更新sql server中表中的數據。 – MeosCoder

+0

我想你正在尋找批量更新,因爲我能夠檢查你的代碼片段..檢查更新的答案.. –

相關問題