Objectdatasource onselecting event

TrialUser
TrialUser used Ask the Experts™
on
In my web page user enters some text and clicks a button. On this button click, I call a SQL server stored procedure. I am now moving to an object datasource.  After creating the object datasource, listview and the business object to support the object datasource, I am wondering how the Onselecting event is trigerred. HOw do I bind data?

Please help. Thanks
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Give me the complete C# Code that you are using.. Also the code for the Stored Procedure!

Author

Commented:
ok, I will try to rip off relevant code and post it in a bit. Thanks

Author

Commented:
<%@ Control Language="vb" AutoEventWireup="false" CodeBehind="ucPr.ascx.vb" Inherits="ucPr" %>
<link href="/Assets/Styles/Product.css" rel="stylesheet" type="text/css" />        
<div class="divProductResults">
                        <div class="divPager">              
              <asp:Label ID="lblCount" runat="server" ></asp:Label>
              <asp:DataPager ID="dpProduct" runat="server"  PageSize="10" PagedControlID="lvProducts">
               <Fields>    
               <asp:NextPreviousPagerField FirstPageText="First" ShowFirstPageButton="True"
             ShowNextPageButton="False" ShowPreviousPageButton="True" PreviousPageText = " <"  />
              <asp:NumericPagerField  ButtonCount="5" />
              <asp:NextPreviousPagerField LastPageText="Last" ShowLastPageButton="True"
             ShowNextPageButton="True" ShowPreviousPageButton="False" NextPageText=">" />
             </Fields>            
        </asp:DataPager>  
        </div>
                      <asp:ListView ID ="lvProducts" runat="server" DataSourceID="odsProduct">
                      <LayoutTemplate>                      
                        <div class="divWrapperProduct">
                            <asp:PlaceHolder ID="itemPlaceHolder" runat="server">  </asp:PlaceHolder>
                        </div>
                     </LayoutTemplate>
                            <ItemTemplate>
                                 <div class="divProduct">
                                    <div style="float:left;width:90px;height:90px;border:2px solid #ccc;">
                                    <img alt='Product' src='/Assets/Images/Products/75/<%# DataBinder.Eval(Container.DataItem, "ImageFileName")  %>'
                                    style="vertical-align:middle; margin-left:auto;margin-right:auto;margin-top:10px;display:block;margin-top:10px;" />
                                    </div>
                                    <a href='<%# DataBinder.Eval(Container.DataItem, "ProductURL")%>' style="margin-left:10px;font-size:16px #1D3A6C;font-weight:bold;" ><%# DataBinder.Eval(Container.DataItem, "ShortDesc")%>      </a>
                                    <hr style="color: #ccc;" />
                                    <div>
                                        <div style="margin-left:10px;float:left;width:30%;">
                                            <span style="color:#58595B;font-size:12px;font-weight:bold;float:left;">Item# : <%# DataBinder.Eval(Container.DataItem, "SKU")%></span>
                                            <br />  
                                            <span style="color:#58595B;font-size:12px;font-weight:bold;float:left;">Brand : <%# DataBinder.Eval(Container.DataItem, "BrndNm")%></span>

                                            </div>
                                             <div style="float:right;width:50%;margin:10px;">
                                               <span style="float:right;color: #58595B; font-size:13px;">
                                             / <%# DataBinder.Eval(Container.DataItem, "UM")%> </span>
                                             <span style="margin-right:5px;float:right; font-size:15px;font-weight:bold;color:#C4393E;">
                                           <%# String.Format("{0:c}", DataBinder.Eval(Container.DataItem, "YourPrice"))%>                                                                                  
                                            </span>
                                           </div>
                                           <div style="float:right;width:50%;margin:10px;">
                                            <asp:ImageButton  ID="imgTopAddtoCart" runat="server" ImageAlign="Right" ImageUrl="/Assets/Images/ProductDetails/ProdAddCart.bmp" />                                                  
                                             <asp:TextBox id="txtQty" runat="server" style="border:1px solid #ccc;width:25px;float:right;color:#58595B;font-weight:bold;margin-right:8px;margin-top:6px;">1</asp:TextBox>
                                             <span style="color:#58595B;font-weight:bold;float:right;margin-top:6px;">Qty:&nbsp;&nbsp;</span>    
                                           </div>                                          
                                        </div>
                                        </div>
                            </ItemTemplate>
                     <EmptyDataTemplate>
                        <div>
                            Search Returned No Results
                        </div>
                     </EmptyDataTemplate>
                     </asp:ListView>

                 <asp:ObjectDataSource ID="odsProduct" runat="server" SelectMethod="GetProducts"
        SelectCountMethod="TotalRowCount" EnablePaging="true" MaximumRowsParameterName="pageSize"
        StartRowIndexParameterName="startRowIndex" TypeName="ProductDataSource"
        SortParameterName="sortExpression">
        <SelectParameters>
            <asp:Parameter Name="startRowIndex" Type="Int32" />
            <asp:Parameter Name="pageSize" Type="Int32" />
            <asp:Parameter Name="sortExpression" Type="String" />
        </SelectParameters>
    </asp:ObjectDataSource>
   </div>                
I have attached the code for the list view , object datasource and data pager client side creation. Then in my Header.Master I have a texbox for search text and a btnSearch button. when the user clicks on the search button, I want to call the stored procedure. When I do not have the object datasource I just do something like 
on btnSearch click I get dsProducts, then :

lvProducts.datasource = dtProducts
lv.databind()

Now, I want to know how and when the communication happens between the business object and DAL to call this stored procedure. Please help thanks

Open in new window

First of all set the AutoPostBack Property of dropDown to true..
Then.. in the SelectedIndexChaned event do this..

Ok Here is the code :
protected void lvProducts_SelectedIndexChanged(object sender,EventArgs e)
{
    // Your Code here..
}

Open in new window

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial