2011-07-01 2 views
1

日付編集で日付と時刻を選択して、グリッドビューをフィルタ処理したいと考えています。私は、DataBind()コントロールを持つボタンを配置します。 GridViewのDataSourceのクエリにはWHERE句があります。これは、グリッドビューと日付編集を接続するコントロールを持っています。私は、クエリをテストするとき、それは正常に動作します。私は、ButtonClickイベントを有効にし、その中に次のコードを書きました:あなたは、私は私が必要とするすべてのものをバインド見ることができるようにコントロールを使用してASPxDateEditでASPxGridViewをフィルタリングする

protected void ASPxButton2_Click(object sender, EventArgs e) 
{ 
    DateEdit.DataBind(); 
    SQLDataSource.DataBind(); 
    ASPxGridView.DataBind(); 
} 

を。しかし、日付と時刻を選択してボタンをクリックしても項目は表示されません。私は何か見落としてますか?助けていただければ幸いです。

答えて

1

私はDevExpress ASP.NETテクニカルエバンジェリスト、Mehulです。

ありますが、これに近づくことができる多くの方法があるが、私はあなたにドロップダウン内のグリッドを与えASPxGridLookupコントロールを使用することをお勧め: http://demos.devexpress.com/ASPxGridViewDemos/ASPxGridLookup/FilterServerMode.aspx

ます。また、内蔵機能を使用することができます http://www.devexpress.com/Support/Center/p/Q267406.aspx するか、これを試してくださいサンプル: ​​

これらのいくつかは同様にあなたを助けるかもしれない: http://search.devexpress.com/?q=filter+external&p=T4|P5|57

が答えるために元の質問では、このサンプルは、外部ボタンでデータバインドする方法を示しています: http://www.devexpress.com/Support/Center/e/E1662.aspx

ありがとうございました。

0

残念ながら、SQLDataSourceの調整方法を示すコードは投稿していません。しかし、私はこの問題を再現しようとし、失敗しました。私のコードは次のとおりです。

<dx:ASPxGridView ID="gvSupply" ClientInstanceName="gvSupply" Width="100%" 
    DataSourceID="SqlDataSource3" KeyFieldName="OrderID" AutoGenerateColumns="False" runat="server"> 
    <Columns> 
     <dx:GridViewDataTextColumn FieldName="OrderID" ReadOnly="True" VisibleIndex="0"> 
      <EditFormSettings Visible="False" /> 
     </dx:GridViewDataTextColumn> 
     <dx:GridViewDataTextColumn FieldName="CustomerID" VisibleIndex="1"> 
     </dx:GridViewDataTextColumn> 
     <dx:GridViewDataTextColumn FieldName="EmployeeID" VisibleIndex="2"> 
     </dx:GridViewDataTextColumn> 
     <dx:GridViewDataDateColumn FieldName="OrderDate" VisibleIndex="3"> 
     </dx:GridViewDataDateColumn> 
    </Columns> 
</dx:ASPxGridView> 

<asp:SqlDataSource ID="SqlDataSource3" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>" 
      ProviderName="<%$ ConnectionStrings:ConnectionString.ProviderName %>" SelectCommand="SELECT * FROM [Orders] WHERE ([OrderDate] = ?)"> 
      <SelectParameters> 
       <asp:ControlParameter ControlID="ASPxDateEdit1" Name="OrderDate" PropertyName="Value" 
        Type="DateTime" /> 
      </SelectParameters> 
     </asp:SqlDataSource> 


     <dx:ASPxDateEdit ID="ASPxDateEdit1" runat="server"> 
     </dx:ASPxDateEdit> 

     <asp:Button ID="Button1" runat="server" Text="Button" /> 

私はNorthwindデータベースのOrdersテーブルでグリッドをテストしました。また、クエリをテストするには、SQLDataSourceのSelectingイベントを処理し、e.Commandおよびe.Argumetsパラメータを確認することをお勧めします。私は、この情報はあなたに役立つことを願っています。

関連する問題