Avatar billede bumle90 Nybegynder
19. juli 2004 - 18:19 Der er 44 kommentarer og
1 løsning

Hvorfor virker mit datagrid ikke

Jeg prøver ganske simpelt at knytte en tabel til et datagrid og få vist dette på min aspx-side.
Problemet er bare at der intet bliver vist...Hverken fejl eller noget. Kun min knap og min label. Hvad gør jeg forkert?
Mvh. Bumle90
/*********DBHandler******************/
using System;
using System.Data;
using System.Data.OleDb;

//X:\A502\udvikling\Cert2004\Tempcertdat.mdb

namespace WebApplication1
{
    /// <summary>
    /// Summary description for DBhandler.
    /// </summary>
    public class DBhandler
    {
        private string  connectionstring;
        private OleDbConnection conn;
       
        public DBhandler(string dbpath) //kaster alle exceptions videre
        {
            connectionstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+@"dbpath";
            conn = new OleDbConnection(@connectionstring);//@ betyder at \ ikke er escapechar
        }

        public DataSet fetch(string sql)
        {
           
            //System.Collections.ArrayList servernames=new System.Collections.ArrayList();
            DataSet dataset= new DataSet();
            try
            {   
                //OleDbCommand cmd = new OleDbCommand(sql,conn);
                OleDbDataAdapter myAdapter = new OleDbDataAdapter( sql, conn );
                conn.Open();

                myAdapter.Fill(dataset);
            }
            catch(Exception ex)
            {
               
                //MessageBox.Show(ex.Message);
            }
            return dataset;
        }

        public bool insert()
        {
            return true;
        }

        public int delete_update(string sql)
        {
            int retval;
            conn = new OleDbConnection(connectionstring);
            OleDbCommand cmd = new OleDbCommand(sql,conn);
            conn.Open();
            retval=cmd.ExecuteNonQuery();
            conn.Close();
            return retval;
        }
    }
}
/*************WebForm1.aspx.cs**********/
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

namespace WebApplication1
{
    /// <summary>
    /// Summary description for WebForm1.
    /// </summary>
   
    public class WebForm1 : System.Web.UI.Page
    {
        protected Label resultLabel;
        protected Button triggerButton;
        protected DataGrid tbldata;
   
        private void Page_Load(object sender, System.EventArgs e)
        {
            try
            {
                WebApplication1.DBhandler db=new WebApplication1.DBhandler(@"X:\A502\udvikling\Cert2004\Tempcertdat.mdb");
                System.Data.DataSet dataset=db.fetch("SELECT * FROM T_CertifilatNoegle");
                tbldata.DataSource=dataset.Tables["T_CertifilatNoegle"];
               
                tbldata.DataBind();
                //tbldata.
            }
            catch(Exception myexc)
            {
                resultLabel.Text=myexc.Message;
            }
        // Put user code to initialize the page here
        }

        #region Web Form Designer generated code
        override protected void OnInit(EventArgs e)
        {
            //
            // CODEGEN: This call is required by the ASP.NET Web Form Designer.
            //
            InitializeComponent();
            base.OnInit(e);
        }
       
        /// <summary>
        /// Required method for Designer support - do not modify
        /// the contents of this method with the code editor.
        /// </summary>
        private void InitializeComponent()
        {   
            this.triggerButton.Click += new System.EventHandler(this.triggerButton_Click);
            this.Load += new System.EventHandler(this.Page_Load);

        }
        #endregion

        private void triggerButton_Click(object sender, System.EventArgs e)
        {
            resultLabel.Text = "Button clicked!";
        }
    }
}
/**********Webform1.aspx*************/
<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="WebApplication1.WebForm1" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
    <HEAD>
        <title>WebForm1</title>
        <meta content="True" name="vs_snapToGrid">
        <meta content="True" name="vs_showGrid">
        <meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
        <meta content="C#" name="CODE_LANGUAGE">
        <meta content="JavaScript" name="vs_defaultClientScript">
        <meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
    </HEAD>
    <body>
        <form id="Form1" method="post" runat="server">
            <asp:label id="resultLabel" Runat="server"></asp:label><br>
            <asp:button id="triggerButton" Text="Click me" Runat="server"></asp:button>
            <asp:DataGrid Runat="server" ID="tbldata" /></form>
    </body>
</HTML>
Avatar billede midas_dk Nybegynder
20. juli 2004 - 09:33 #1
Prøv at sætte autogeneratecolumns="True" på din datagrid-definition i .aspx-filen.
Avatar billede bumle90 Nybegynder
20. juli 2004 - 10:25 #2
Det gjorde ikke den store forskel :/
Avatar billede bumle90 Nybegynder
20. juli 2004 - 10:25 #3
Andre forslag?
Avatar billede snepnet Nybegynder
20. juli 2004 - 10:34 #4
Er du 100 % sikker på at du har data i dit dataset ?
Avatar billede snepnet Nybegynder
20. juli 2004 - 10:35 #5
( du kan altid lave en lille udskrivning af det med dataset.WriteXml(path) )
Avatar billede snepnet Nybegynder
20. juli 2004 - 10:43 #6
Denne her sætter vel din datasource til noget forkert :

connectionstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+@"dbpath";
sætter bare "dbpaht" ind som tekst.... Prøv med :
connectionstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+dbpath;
Avatar billede bumle90 Nybegynder
20. juli 2004 - 12:45 #7
Sådan et datagrid der, Kan det kun bruges til at vise data fra en tabel sql forespørgsel, eller kan man få den til at vise data fra forskellige forespørgsler, lægge logik ind i de enkelte celler. Vise forskellige farver på forskellige rækker osv osv.
Altså fx. skal jeg i en kolonne vise x-antal checkboxes alt efter hvad der står i databasen. Det kan også forekomme jeg skal vise et billede i den celle istedet for checkboxes. Udfyldelsen af af disse celler skal baseret på deres egen sql. Dvs. på en måde uafhængigt af hvad der står i resten af datagriddet. Er disse ting muligt eller kan datagrid kun bruges til simpel datavisning?
Avatar billede snepnet Nybegynder
20. juli 2004 - 12:48 #8
Du kan udnytte det til rigtig rigtig meget. Det er meget generisk komponent.
Der er mange steder at finde info om det, men du kan starte med hende her :o)
http://www.datagridgirl.com
Avatar billede snepnet Nybegynder
20. juli 2004 - 12:49 #9
Fik du det til at virke ?
Avatar billede bumle90 Nybegynder
20. juli 2004 - 13:02 #10
snepnet, jeg fik ikke testet det mere...jeg lavede et datagrid vha. den wizard der er i vs.net. Der fik jeg det til at virke. Jeg ville bare have noget data ud på siden nemlig.
Avatar billede bumle90 Nybegynder
20. juli 2004 - 13:03 #11
Men jeg bliver nødt til at finde ud af noget mere om datagrids tror jeg..Det ser ud til det er den rigtige måde at præsentere data fra databasen på
Avatar billede bumle90 Nybegynder
20. juli 2004 - 13:03 #12
Hvis man kan lave alle de her undtagelser osv. i de enkelte celler
Avatar billede bumle90 Nybegynder
20. juli 2004 - 13:04 #13
Må jeg ha lov at stille dig endnu et lille bispørgsmål snepnet?
Avatar billede snepnet Nybegynder
20. juli 2004 - 13:05 #14
Det er i hvert fald én anvendelige komponent til det.
Der er også en DataList, og en Repeater der kan bruges til rigtig meget, men de kræver lidt mere arbejde at få til at vise noget.

Ja - spørg endelig løs :o)
Avatar billede bumle90 Nybegynder
20. juli 2004 - 13:09 #15
okay, hvad er fordele og ulemper ved disse 2 controls?
Undskyld det var vidst endnu et spørgsmål :P

Men det jeg egentlig ville spørge om var om du ved noget om muligheden for at genere pdf-filer on the fly i .net?
Altså hvis jeg sender en oplysning ind via en webform, der bliver så generet en pdf-fil på baggrund af disse oplysninger som er indsendt, som brugeren så kan hente ned med det samme.
Er det noget du ved noget om?
Avatar billede snepnet Nybegynder
20. juli 2004 - 13:26 #16
Mht. PDF-filer er der masser der har lavet libraries til den slags. Prøv f.eks. her :
http://www.123aspx.com/Directory.aspx?dir=277

Eller sådan en googling her :
http://www.google.dk/search?q=.net+generating+pdf-files+on+the+fly&hl=da&lr=&ie=UTF-8&start=10&sa=N

DataList og Repeater er - ligesom et datagrid - kontroller hvor du kan angive templates for hvordan fremvisningen skal tage sig ud.
Forskellen er - at du altid bliver nødt til at lave en template for overhovedet at få noget at se.
Til gengæld har du så virkelig god kontrol over hvordan det skal præsenteres, hvor datagriddet er hmmm... mere "dedikeret" til typisk "regnearksstil".
Avatar billede bumle90 Nybegynder
20. juli 2004 - 14:01 #17
hmmm ja okay, så er det nok en af de 2 jeg skal bruge eftersom jeg skal ha checkboxe og indre sql-sætninger osv.
Er der stor forskel på repeater og datalist?
Avatar billede bumle90 Nybegynder
20. juli 2004 - 14:03 #18
De koster alle penge de pdf-toolkits hva :D
Avatar billede bumle90 Nybegynder
20. juli 2004 - 14:03 #19
Avatar billede snepnet Nybegynder
20. juli 2004 - 14:06 #20
Ja det er noget folk gerne vil betales for - men jeg tror de fleste tilbyder trials, men.
Jeg tror godt du kan finde en gratis et eller andet sted... Jeg mener der er nogle open-source drenge der har lavet nogle gode ting til det, men det er et stykke tid siden jeg har rodet med det selv.
Avatar billede snepnet Nybegynder
20. juli 2004 - 14:14 #21
Mht til forskelle/anbefalinger omkring de forskellige servercontrols, så er der mange der han en masse gode idéer omkring det hvis du googler lidt (noget med datalist vs repeater ell).
F.eks. en her :
http://kuruvidotnet.blogdrive.com/archive/cm-7_cy-2004_m-7_d-1_y-2004_o-10.html

Men under alle omstændigheder synes jeg du skal prøve at lege lidt med dem selv... Der kan være mange årsager til at vælge det ene frem for det andet.

Mvh
Avatar billede bumle90 Nybegynder
20. juli 2004 - 14:14 #22
Hvad hvis man selv skulle udvikle sådan et lille bibliotek, tror du det ville være svært?
Avatar billede snepnet Nybegynder
20. juli 2004 - 14:29 #23
Denne her er gratis, og du kan også hente source-koden.
http://sourceforge.net/projects/itextsharp/
Avatar billede bumle90 Nybegynder
20. juli 2004 - 15:07 #24
Det ser sq godt ud :)
De har vidst bare ikke lige overvejet dokumentation :P hehe
Avatar billede snepnet Nybegynder
20. juli 2004 - 15:12 #25
Avatar billede bumle90 Nybegynder
20. juli 2004 - 15:42 #26
ahaa ja okay :D Jeg er vidst blind :)
Har du prøvet at kompilere det?
Avatar billede snepnet Nybegynder
20. juli 2004 - 15:44 #27
nope
Avatar billede bumle90 Nybegynder
20. juli 2004 - 15:47 #28
okay...får nemlig et par fejl...(Damn jeg er besværlig hva :) )
Du skal nok få pointene plus ekstra hvis du vil ha.
Skal lige siges jeg lige er gået i gang med .net nemlig, så jeg er lidt grøn i det endnu hehe....
Men jeg får følgende fejl når jeg vil kompilere:
rror CS0246: The type or namespace name 'ICSharpCode' could not be found (are you missing a using directive or an assembly reference?)

Den kan vidst ikke finde en fil...men jeg synes ikke den fil er med i den src-kode pakke man henter ned...
Avatar billede snepnet Nybegynder
20. juli 2004 - 16:51 #29
Du skal lave en reference til dll-filen - altså den du får hvis du henter denne her :

http://prdownloads.sourceforge.net/itextsharp/itextsharp-0.04-release.zip?download
(det er releaseudgaven... indeholder vist udelukkende en dll-fil).

Referencen laver du ved at højreklikke på "folder" under dit projekt som hedder references.
Du kan så bare browse dig frem til dll-en.

Efterfølgende er det nok en god idé for dig at smide de her to op blandt den andre :

using iTextSharp.text;
using iTextSharp.text.pdf;
Avatar billede snepnet Nybegynder
20. juli 2004 - 16:52 #30
Jeg vover et svar :o)
Avatar billede bumle90 Nybegynder
21. juli 2004 - 13:17 #31
Hmmm du skal nok få dine point :)
Men jeg har nu added referencen...og den brokker sig stadig over det samme....Hvad kan det skyldes?
Avatar billede snepnet Nybegynder
21. juli 2004 - 13:20 #32
Hvad brokker den sig helt præcist over ?
Avatar billede bumle90 Nybegynder
21. juli 2004 - 13:23 #33
okay her kommer hele smørren :=)

Performing main compilation...
c:\documents and settings\bsd\desktop\zipdownloads\itextsharp-0.04-src\itextsharp\text\pdf\pdfcontents.cs(7,7): error CS0246: The type or namespace name 'ICSharpCode' could not be found (are you missing a using directive or an assembly reference?)
C:\Documents and Settings\bsd\Desktop\zipdownloads\itextsharp-0.04-src\iTextSharp\text\pdf\PdfReader.cs(8,7): error CS0246: The type or namespace name 'ICSharpCode' could not be found (are you missing a using directive or an assembly reference?)
C:\Documents and Settings\bsd\Desktop\zipdownloads\itextsharp-0.04-src\iTextSharp\text\pdf\PdfReader.cs(9,7): error CS0246: The type or namespace name 'ICSharpCode' could not be found (are you missing a using directive or an assembly reference?)
C:\Documents and Settings\bsd\Desktop\zipdownloads\itextsharp-0.04-src\iTextSharp\text\pdf\PdfStream.cs(4,7): error CS0246: The type or namespace name 'ICSharpCode' could not be found (are you missing a using directive or an assembly reference?)
C:\Documents and Settings\bsd\Desktop\zipdownloads\itextsharp-0.04-src\iTextSharp\text\pdf\PRStream.cs(6,7): error CS0246: The type or namespace name 'ICSharpCode' could not be found (are you missing a using directive or an assembly reference?)

Build complete -- 5 errors, 0 warnings
Building satellite assemblies...
Satellite assemblies could not be built because the main project output is missing.


---------------------- Done ----------------------

    Build: 0 succeeded, 1 failed, 0 skipped
Avatar billede bumle90 Nybegynder
21. juli 2004 - 13:26 #34
Ude under references er der godt nok også sådan et warning-mærke ved ISharpCode.SharpZipLib...
Avatar billede snepnet Nybegynder
21. juli 2004 - 13:32 #35
Hmm... du skal bare lave en reference til dll-filen.
Der er ingen grund til at du bygger den selv.

Kan du ikke bare trække en dll ud af denne :
http://prdownloads.sourceforge.net/itextsharp/itextsharp-0.04-release.zip?download

Det er så fra det projekt hvor du har behov for at benytte pdf-writeren at du laver en reference til dll-en.
Avatar billede bumle90 Nybegynder
21. juli 2004 - 13:34 #36
johhh men det er også det jeg har gjort...Jeg har lavet en ny solution, og added det projekt som der ligger i pakken man henter ned(source code pakken) i dette projekt har jeg så added en reference til dll'en, hvilket resulterer i de fejl.
Er det helt ved siden af den måde det skulle gøres?
Avatar billede bumle90 Nybegynder
21. juli 2004 - 13:40 #37
ahhh nu tror jeg at jeg er med på hvad du mener :)
Du vil have jeg skal lave det projekt jeg nu engang skal bruge til at lave pdf-filer med, og i det projekt lave en reference til den dll fil :)
Avatar billede snepnet Nybegynder
21. juli 2004 - 13:42 #38
Jeps ! :o)
Den pakke du henter med
http://prdownloads.sourceforge.net/itextsharp/itextsharp-0.04-release.zip?download
Indeholder ikke andet en en dll-fil, og det er bare den du skal bruge.
Avatar billede bumle90 Nybegynder
21. juli 2004 - 13:47 #39
jeg er da en klaphat hva *GGG*
Undskyld ulejligheden. Du har været til stUr stUr hjælp mester :)
tusind tak skal du have.
Pointene er ihvertfald dine hehe
Avatar billede bumle90 Nybegynder
21. juli 2004 - 13:48 #40
Så skal jeg bare have omskrevet deres eksempler fra java til c# :)
Det kan der jo godt gå lidt tid med hehe....Håber det kan bruges fra .net
Avatar billede snepnet Nybegynder
21. juli 2004 - 14:07 #41
Det var så lidt... Hvis du vil hurtigt igang kan du lave sådan en her :

Document d = new Document();

PdfWriter p = PdfWriter.getInstance(d, new FileStream(@"C:\TestFiles\pdftest.pdf", FileMode.Create));

d.Open();

d.Add(new Paragraph("hej der"));

d.Close();

Hvis du får en fejl om at du mangler den der ICSharpCode.SharpZipLib.dll må du lige sige til.
Avatar billede snepnet Nybegynder
21. juli 2004 - 14:08 #42
Avatar billede bumle90 Nybegynder
21. juli 2004 - 14:18 #43
jeg har lige et spg. ang. det at sende pdf-filen.
Jeg opretter lige et nyt spg :)
Føler ikke jeg vil hive mælk ud af denne pat hæhæhæ...den er vidst rimelig godt udbrugt
Avatar billede bumle90 Nybegynder
21. juli 2004 - 14:21 #44
Avatar billede snepnet Nybegynder
21. juli 2004 - 14:23 #45
HAHA :o) - hive mere mælk ud af denne pat *G*
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