Avatar billede donpedro Nybegynder
20. juni 2006 - 19:46 Der er 1 kommentar

Hjælp til FilterExpression

Hej Alle

Nu er den næsten på plads med mine dropdownlister, men jeg skal lige have lidt hjælp til min FilterExpression.

Jeg har 2 dropdownlister, som henter filterværdier fra en database. De fundne værdier vises når man trykker på en filtreringsknap. Problemet er, at jeg gerne ville have dropdownlisterne både til at fungere uafhængigt og sammen. Det vil sige, at hvis man vælger en værdi i første dropdown og lader anden dropdown urørt og trykker på knappen, findes værdier der matcher første del af min FilterExpression. Lader man værdien fra før stå i første dropdown stå og vælger en værdi fra anden dropdown og trykker på knappen findes værdier inden for angivne parametrer - dvs. ud fra begge udsagn i min FilterExpression...er det forståligt?!? Denne funktion løser min nuværende FilterExpression ikke. Hvordan laver jeg det om?

Min kode ser ud som følger:

<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <br />
        <strong>Country &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;City</strong><br />
        <asp:DropDownList runat="server" id="CountryListBox" AppendDataBoundItems="True"
        DataSourceID="CountrySqlDataSource"
        DataTextField="Country" DataValueField="Country" >
        <asp:ListItem Selected="True" Value="" >(Show All)</asp:ListItem>
        </asp:DropDownList>
       
        <asp:DropDownList runat="server" id="CityListBox" AppendDataBoundItems="True"
        DataSourceID="CitySqlDataSource"
        DataTextField="City" DataValueField="City" >
        <asp:ListItem Selected="True" Value="" >(Show All)</asp:ListItem>
        </asp:DropDownList>
        <asp:Button runat="server" id="FilterButton" Text="Filter Results" /><br />
        <br />
       
        <asp:GridView ID="EmployeesGridView"
        DataSourceID="EmployeeDetailsSqlDataSource"
        AutoGenerateColumns="False"
        AllowSort="True"
        RunAt="server" Width="800px" CaptionAlign="Left" HorizontalAlign="Left">
               
        <HeaderStyle backcolor="Navy" forecolor="White"/>
        <RowStyle backcolor="White"/>
        <AlternatingRowStyle backcolor="LightGray"/>
        <EditRowStyle backcolor="LightCyan"/>
             
        <Columns>                 
            <asp:BoundField DataField="EmployeeID" HeaderText="EmployeeID" InsertVisible="False"
                ReadOnly="True" SortExpression="EmployeeID" />
            <asp:BoundField DataField="FirstName" HeaderText="FirstName" SortExpression="FirstName" />
            <asp:BoundField DataField="LastName" HeaderText="LastName" SortExpression="LastName" />
            <asp:BoundField DataField="City" HeaderText="City" SortExpression="City" />
            <asp:BoundField DataField="Country" HeaderText="Country" SortExpression="Country" />
        </Columns>               
        </asp:GridView>

          <asp:SqlDataSource ID="CountrySqlDataSource"
          SelectCommand="SELECT DISTINCT Country FROM Employees"
          EnableCaching="True"
          CacheDuration="60"
          ConnectionString="<%$ ConnectionStrings:NORTHWINDConnectionString %>"
          RunAt="server" ProviderName="<%$ ConnectionStrings:NORTHWINDConnectionString.ProviderName %>" />
         
          <asp:SqlDataSource ID="CitySqlDataSource"
          SelectCommand="SELECT DISTINCT City FROM Employees"
          EnableCaching="True"
          CacheDuration="60"
          ConnectionString="<%$ ConnectionStrings:NORTHWINDConnectionString %>"
          RunAt="server" ProviderName="<%$ ConnectionStrings:NORTHWINDConnectionString.ProviderName %>" />

        <asp:SqlDataSource ID="EmployeeDetailsSqlDataSource"
          SelectCommand="SELECT [EmployeeID], [LastName], [FirstName], [Country], [City] FROM [Employees]"
          EnableCaching="True"
          CacheDuration="60"
          ConnectionString="<%$ ConnectionStrings:NORTHWINDConnectionString %>"
          FilterExpression="Country LIKE '{0}' AND City LIKE '{1}'"
          RunAt="server" ProviderName="<%$ ConnectionStrings:NORTHWINDConnectionString.ProviderName %>">

          <FilterParameters>
            <asp:ControlParameter ControlID="CountryListBox"  PropertyName="SelectedValue" />
            <asp:ControlParameter ControlID="CityListBox" PropertyName="SelectedValue" />
          </FilterParameters>
        </asp:SqlDataSource>



    </div>
    </form>
</body>
</html>
Avatar billede snepnet Nybegynder
10. august 2006 - 21:22 #1
Hvordan går det her? - har du stadig problemer?
Mvh
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester