Avatar billede ine28 Nybegynder
11. januar 2006 - 20:17 Der er 12 kommentarer og
1 løsning

Modpart til Random.

Hej.

Jeg sidder og skal hente noget data fra en excel-fil. Når jeg har fået fat i data fra filen, så vil jeg godt skrive hver linie ind i hver sin textbox. Jeg ved at der på Random findes en 'funktion'?? der hedder Next, men da jeg ikke skal bruge Random, men hver linie efter hinanden, findes der så en modpart til Random, som også har Next??

(Ja, jeg er lige begyndt at programmere i C#, så jeg har ikke helt styr på termerne endnu... håber I kan bære over med mig! :O)

På forhånd mange tak for hjælpen!
Mvh. Trine.
Avatar billede jokkejensen Novice
11. januar 2006 - 21:02 #1
man plejer at lave en løkke til at køre en række data igennem

ex

for(i = 0 ; i < AntalLinier ; i++ )
{
Response.Write(DitDataRaekke[i]);
}

der er mere om løkker ex her : www.docjava.dk under andre sprog > C# > iteration... mener jeg :)
Avatar billede jokkejensen Novice
11. januar 2006 - 21:03 #2
ikke iteration men kontrolstruktur..
Avatar billede jokkejensen Novice
11. januar 2006 - 21:07 #3
http://msdn2.microsoft.com/32dbftby.aspx glem lige docjava.. der var da vist intet om iteration ved nærlæsning.. :).. beklager
Avatar billede ine28 Nybegynder
11. januar 2006 - 21:11 #4
Uhhh, jeg glemte at skrive at mine data er lagt i et dataset, og jeg derfra vil trække hver enkelt linie ud en ad gangen.... Kan jeg så stadig bruge en iteration???
Avatar billede jokkejensen Novice
11. januar 2006 - 21:37 #5
Det gør det bare endnu lettere, jeg vidste ikke lige hvordan du havde fat i de data..

Her er et eksempel til asp.net..

int i = 0; // opretter en tæller
    foreach ( DataTable table in ditDataSet.Tables ) // for hver datatabel i datasettet
        {
            foreach ( DataRow row in table.Rows ) // for hver datarække i datatabellen
            {
                Response.Write("Raekke: " + i + " = " row ["RaekkeNavn"].ToString() ); // udskriv rækken.. erstat Rækkenavn med columbname.. eller index ex row[0].ToString() hvis den er ukendt
                i++;
            }
        }

Det er dog ikke testet, men er sikker på du fanger ideen..

Mvh
Avatar billede ine28 Nybegynder
12. januar 2006 - 18:22 #6
Ser ud som noget jeg kan bruge, men jeg kan altså ikke finde Rows, på min tabel!?? Hvorfor???

Og, jeg havde tænkt at jeg ville skrive mit resultat ind i en textbox... Hvordan skal jeg gøre det??

Mvh Trine.
Avatar billede ine28 Nybegynder
12. januar 2006 - 18:39 #7
Undskyld, jeg skriver lige igen. Mht. det sidste med at skrive ind i en textbox.... Der er 2 kolonner i mit datasæt, jeg trækker ud, og for hver række, skal hver kolonne skrives i hver sin textbox.... (Giver nok ikke mening, det jeg lige skrev...?) Altså, jeg har en kolonne der indeholder navne på film, og en kolonne, der indeholder pris på hver film. Så får jeg første linie, så skal navnet på filmen skrives i en textbox, og prisen skal skrives i en anden!!! Hvordan gør man det???
Avatar billede jokkejensen Novice
12. januar 2006 - 20:47 #8
Hey.. du skal ikke bruge tekstbokse til at præsentere data i asp.net..

asp:Repeater asp:DataList eller asp:DataGrid har forskellige egenskaber og egner sig meget bedre til at vise tabulære data..

Det foregår ved at sætte en datasource på controlleren og databinde..

Sig til hvis du skal have lidt eksempler

Mvh
Avatar billede ine28 Nybegynder
13. januar 2006 - 13:58 #9
Til! ;OD
Avatar billede jokkejensen Novice
13. januar 2006 - 19:11 #10
Opret lige et nyt projekt og smid følgende kode der ind i din CS fil.. erstat den page_load der allerede ligger der.

OBS! koden er langt fra den mest fornuftige, mht til at oprette et DataSet, men du har jo allerede et dataset, så har bare lavet det der er lettest at forstå.


  protected void Page_Load(object sender, EventArgs e)
    {
        DataSet ds = new DataSet(); //opretter et dataset
        DataTable dt = new DataTable(); //opretter et datatable

        dt.Columns.Add("Film"); //opretter en kolonne i tabellen
        dt.Columns.Add("Pris"); //opretter en kolonne i tabellen

        DataRow dr = dt.NewRow(); //opretter en række i tabellen
        DataRow dr2 = dt.NewRow(); //opretter en række i tabellen

        dr[0] = "En film"; //tildeler første række, kolonne 1 en værdi
        dr[1] = "150kr"; //tildeler første række, kolonne 2 en værdi

        dt.Rows.Add(dr); // tilføjer rækken i tabellen

        //opretter en til
        dr2[0] = "En anden film";
        dr2[1] = "190kr";

        dt.Rows.Add(dr2);

        // ligger tabellen i datasettet.
        ds.Tables.Add(dt);


        //her kommer det vigtige..
        // i min aspx fil har jeg oprettet følgende:
        // <asp:DataGrid runat="server" ID="grid"></asp:DataGrid>
        // Denne sætter jeg nu en datakilde på, så den ved hvor den skal trække dataen fra, datakilden kan være forskellige ting
        //men i dit tilfælde, og dette en datasource - Som jeg tidligere har lavet
        grid.DataSource = ds;
        // asp:datagriddet kender nu datakilden, men mangler at få bundet dataen til det.
        grid.DataBind();
    }


I din aspx fil ligger du :

<asp:DataGrid runat="server" ID="grid"></asp:DataGrid>

Den skal bare placeres inde i dit <form runat="server"> tag.

Sig til hvis det driller..

Håber det kan give dig en fornemmelse af hvad meningen er, forsøg selv at tilføje et par rækker.. her efter erstatter du bare "ds" altså mit dataset, med dit dataset, og så vil en lang række blive vist i dit projekt..
Avatar billede ine28 Nybegynder
16. januar 2006 - 18:15 #11
Ups.... jeg har vist glemt at fortælle at jeg ikke bruger noget asp, da det er en win-form, jeg skal lave..... Så kan jeg vel ikke bruge ovenstående, kan jeg!???
(Det er en eksamensopgave, og der er vi blevet bedt om at lave det i en win-form.... :o(  )
Avatar billede jokkejensen Novice
16. januar 2006 - 20:19 #12
uffff

beklager.. der kan jeg ikke hjælpe.. kender kun lige til asp.net har aldrig arbejdet med winforms..

Men lig et svar i den her tråd.. accepter det selv, og opret en ny tråd...

(så folk lige får opmærksomhed på det)

Henvis til den her opgave, skriv du skal have bundet et dataset til en controller til at vise data i en winform.. så er der hurtigt nogen der kan hjælpe..

beklager meget :(

Mvh
Avatar billede ine28 Nybegynder
17. januar 2006 - 08:45 #13
Ok, det gør jeg! :O)
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