Avatar billede uas Nybegynder
22. februar 2006 - 09:23 Der er 6 kommentarer

Sortering i GridView

Hej

Jeg er ved at lave en simple side hvor brugerne kan indtaste i et form felt, og så henter den alt det der passer til i databasen. Den kan jeg også godt få den til, men når jeg trykker på sortering så forsvinder den fremsøgte resultat??? - Er der nogle der kan fortælle hvorfor, og hvordan man evt. løser det :-)

<%@ Page Language="VB" AutoEventWireup="false"%>

<script runat="server">
 
  Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs)
   
    Dim strQuery As String
    strQuery = "SELECT * FROM tabel WHERE Firmanavn Like '" & Firmanavn.Text & "%'"
    AccessDataSourceICDFiltr.SelectCommand = strQuery

  End Sub
 
</script>

<html>
<head>
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">

    <table cellpadding="2" cellspacing="0" bgcolor="#EFEFEF">
      <tr>
        <td>Firmanavn</td>
        <td><asp:TextBox ID="Firmanavn" runat="server"></asp:TextBox></td>
      </tr>
      <tr>
        <td colspan="2" align="center"><asp:Button ID="Submit" runat="server" OnClick="Button1_Click" Text="Filtrer" /></td>
      </tr>     
    </table>

    <asp:AccessDataSource id="AccessDataSourceICDFiltr" Runat="Server"
        DataFile = "App_Data\icsystem.mdb" 
        SelectCommand = ""
    />

    <asp:GridView AllowPaging="true" AllowSorting="True" AutoGenerateColumns="false"
      DataKeyNames="autoinc" DataSourceID="AccessDataSourceICDFiltr" EnableSortingAndPagingCallbacks="True"
      ID="ICDFiltr" runat="server" PageSize="50">

        <Columns>
          <asp:BoundField DataField="AutoInc" HeaderText="AutoInc" ReadOnly="True" SortExpression="autoinc" />
          <asp:BoundField DataField="Firmanavn" HeaderText="Firmanavn" SortExpression="firmanavn" />
        </Columns>

    </asp:GridView>


    </form>
</body>
</html>
Avatar billede dr_chaos Nybegynder
22. februar 2006 - 09:33 #1
prøv med denne accessdatasource:

    <asp:AccessDataSource id="AccessDataSourceICDFiltr" Runat="Server"
        DataFile = "App_Data\icsystem.mdb"
        SelectCommand = "SELECT * FROM tabel WHERE Firmanavn Like ?%"
    >
<selectparameters>
<controlparameter controlid="Firmanavn" propertyname="text" Name=Firmanavn />
</selectparameters>
</asp:AccessDataSource>

Der kan være stave fejl. Fjern din button event.
Avatar billede dr_chaos Nybegynder
22. februar 2006 - 09:36 #2
din like statement skal være

SelectCommand="SELECT * FROM [tabel] WHERE (Firmanavn LIKE  ? & '%')"
Avatar billede uas Nybegynder
22. februar 2006 - 09:53 #3
Så får jeg denne fejl

Parser Error Message: System.Web.UI.WebControls.ParameterCollection must have items of type 'System.Web.UI.WebControls.Parameter'. 'controlparameter' is of type 'System.Web.UI.HtmlControls.HtmlGenericControl'.
Avatar billede dr_chaos Nybegynder
22. februar 2006 - 10:14 #4
prøv med

<asp:controlparameter controlid="Firmanavn" propertyname="text" Name=Firmanavn />
Avatar billede uas Nybegynder
22. februar 2006 - 10:55 #5
det virker nu. Mange tak :-)

Smidder du lige et svar, så du kan få dine point?
Avatar billede dr_chaos Nybegynder
22. februar 2006 - 12:17 #6
svar :)
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