2016-06-16 2 views
0

これは簡単な修正のように聞こえる場合は謝罪します。私は、VB.NetとDevExpressのgridviewsのライブラリーとこれまでの多くの素晴らしいものを使用することで非常に新しいです。私は一般的にDevExpressとVB.Netにもっと精通しています。これまでは、並べ替えられたイベントをトリガするためにASPxGridViewを取得しようとしていましたが、以下の関数を渡すことはありません。それはページの読み込みでdatatableを取得していますが、ここで私が持っているイベント関数をトリガしたりソートしていません。私が何か悪いことをしているかどうか教えてください。ASPxGridViewイベントをソートしないソート

私の前のコードはDevExpressのASPxGridViewコードを使用しています。

<dx:ASPxGridView runat="server" ID="gdrDataView" ClientInstanceName="gdrDataView" AutoGenerateColumns="false" Styles-AlternatingRow-BackColor="#DDDDDD" OnCustomColumnSort="gdrDataView_CustomColumnSort"> 
    <Settings GridLines="None" /> 
    <SettingsPager Position="Top" Mode="ShowPager" PageSize="50"></SettingsPager> 
    <Styles SelectedRow-ForeColor="Black" SelectedRow-BackColor="#ffdd99"></Styles> 
    <SettingsBehavior AllowSelectByRowClick="true" AllowSelectSingleRowOnly="false" AllowSort="true" /> 
    <SettingsEditing BatchEditSettings-StartEditAction="Click" BatchEditSettings-ShowConfirmOnLosingChanges="true"></SettingsEditing> 
    <Columns> 
     <dx:GridViewDataColumn Caption="ID" FieldName="ID" ReadOnly="true"> 
      <CellStyle HorizontalAlign="Center"></CellStyle> 
     </dx:GridViewDataColumn> 
     <dx:GridViewDataColumn Caption="EnterBy" FieldName="EnterBy" ReadOnly="true"></dx:GridViewDataColumn> 
     <dx:GridViewDataColumn Caption="EnterDate" FieldName="EnterDate" ReadOnly="true"></dx:GridViewDataColumn> 
     <dx:GridViewDataColumn Caption="Contact" FieldName="Contact" ReadOnly="true"></dx:GridViewDataColumn> 
     <dx:GridViewDataDateColumn Caption="Start" FieldName="Start" ReadOnly="true"> 
      <PropertiesDateEdit DisplayFormatString="g"></PropertiesDateEdit> 
     </dx:GridViewDataDateColumn> 
     <dx:GridViewDataDateColumn Caption="End" FieldName="End" ReadOnly="true"> 
      <PropertiesDateEdit DisplayFormatString="g"></PropertiesDateEdit> 
     </dx:GridViewDataDateColumn> 
     <dx:GridViewDataColumn Caption="Status" FieldName="Status" ReadOnly="true"></dx:GridViewDataColumn> 
     <dx:GridViewDataColumn Caption="Type" FieldName="Type" ReadOnly="true"></dx:GridViewDataColumn> 
     <dx:GridViewDataColumn Caption="Description" FieldName="Description" ReadOnly="true"></dx:GridViewDataColumn> 
    </Columns> 
</dx:ASPxGridView> 

ここはVBのバックエンドコードです。

Protected Sub gdrDataView_CustomColumnSort(ByVal sender As Object, ByVal e As CustomColumnSortEventArgs) 
    Dim grid As ASPxGridView = TryCast(sender, ASPxGridView) 
    Dim test As New DataService.DataService 
    Dim data As DataSet 
    data = test.GetChanges(ddlType.SelectedValue, CheckDBNull(CType(dtStart.SelectedDate, DateTime), enumObjectType.DateType), CheckDBNull(CType(dtEnd.SelectedDate, DateTime), enumObjectType.DateType)) 
    grid.DataSource = data.Tables(0) 
    grid.DataBind() 
End Sub 

答えて

0
  1. "SortMode" プロパティが "カスタム" に設定されていることを確認:あなたは、実行時にデータをバインドする場合
  2. にドキュメントに従ってください適切に実装されていることを確認してください。
+0

また、このグリッドビュー全体で{SortMode = "Custom"}を数回追加しても動作しないようです。列見出しをクリックすると、グリッドビューのデータが消えます。 –

+0

更新された回答。ソート時にグリッドデータが空の場合は、データバインディングに関連する可能性が最も高いです。 –

+0

この問題を解決できましたか? –

0

あなたはOnCustomColumnSort代わりのonOnCustomColumnSortあるべきイベント名のタイプミスを持っています。

<dx:ASPxGridView runat="server" ... OnCustomColumnSort="gdrDataView_CustomColumnSort"> 

あなたもAutoEventWireup属性は、ASPXの内側に真であることを保証するだろうか?

<%@ Page ... AutoEventWireup="true" %> 
+0

ありがとうございます。私はその部分を見落とした。しかし、問題はまだそこにあります。 –

+0

私は答えを更新しました。 – Win

関連する問題