DataGrid...

Olen tässä yrittänyt saada tehdyksi jonkinlaista DataGriddiä, ja jonkinlaisen olen saanutkin, mutta vielä pitäisi saada muutettua solujen leveyttä, tai onnistuuhan sekin, mutta vain oletusarvoja muuttamalla, ja se taas tekee kaikista yhtä leveitä... Mikä on melko turhauttavaa, jos samaan taulukkoon pitäisi saada todella erilaisia tietoja mahdutettua.

Tässä selostus siitä mitä tein:

Aloitan uuden projektin nimellä "test". Piirrän formille "DataGridin".

Lisään projektiin "DataSetin", valitsen ilmestyvästä valikosta "untyped...".
Klikkaan "Properties" ikkunasta "Tables", Klikkaan "Add" nappulaa, "Members" Ruutuun
ilmestyy "Table1", ja viereiseen ruutuun ilmestyy paljon tekstiä...
Klikkaan kohtaa "Columns", ilmestyy uusi ikkuna, joka on ihan samannäköinen kuin edellinenkin, vähän eri teksteillä tosin. Lisään taulukkoon pari "pylvästä"... Suljen ikkunat.

Klikkaan form designerissä sitä DataGridiä, Properties ikkunasta klikkaan "Data Source",
ilmestyvästä valikosta valitsen DataTable1, gridille ilmestyy ne pari pylvästä jotka loin juuri, eli tähän mennessä kaikki tuntuu menevän oikein...

Klikkaan kohtaa "TableStyles", ilmestyy taas uusi "Collection editor", mikä on ulkonäöltään
täysin identtinen kahden edellisen kanssa, paitsi vähän eri otsikoilla... Painan "Add" nappulaa.

Valitsen ilmestyvästä valikosta kohdan "GridColumnStyles", taas ilmestyy uusi "Collection editor" Painan "Add" nappia pari kertaa, "Members" ruutuun ilmestyy kaksi riviä "DataGridTextBoxColumn1" ja
"...2".

Näiden ominaisuuksia muutan siten, että ykkösen "MappinNameksi" Laitan "Column1", ja kakkoseen
vastaavasti "Column2", jotta voisin jotenkin huomata näiden tekevän jotain muutan jotain muutakin,
Asetan leveydet selvästi toisistaan poikkeaviksi (100 ja 20).

Suljen editorit, mikään ei kuitenkaan muuttunut. varmuuden vuoksi ajan ohjelman, ei mitään vaikutusta, solut ovat ihan yhtä leveitä.

Ymmärtääkseni "TableStyles Collection editorissa" olisi pitänyt sielläkin laittaa joku "Mapping Name", mutta siellä olevassa valikossa ei ollut kuin ruksi, ja sen perässä teksti "none".

En oikein käsitä missä tein virheen... Olen nyt jo muutaman päivän ajan ns. "hakannut päätä seinään", ja aina sama tulos. Ohjeitakin olen lukenut, ja paljonkin... Mutta lukeminen ja ymmärtäminen ovat ilmiselvästi kaksi eri asiaa...
3336
Äänestä

Muut lukivat myös

Vastaukset 3

Vanhimmat

Laita Formin LoadForm-moduliin ohjelmakoodi, jossa määrität niiden leveydet. Itse en käytä valmiiksi määriteltyä DataGriddiä vaan aina määritän ohjelmassa sarakemäärät, niiden leveydet yms. Aluksi siinä on vähän enemmän vaivaa, mutta se on paljon kätevämpää ja joustavampaa.

Äänestä
  • Anteeksi, että kyselen tyhmiä, mutta en tällä hetkellä osaa juuri enempää kuin tuossa selostin...

    Eli miten ne leveydet sitten pitäisi määritellä?

    Äänestä

Keksin ratkaisun... Ongelma oli tuossa kohdassa:

"Klikkaan form designerissä sitä DataGridiä, Properties ikkunasta klikkaan "Data Source",
ilmestyvästä valikosta valitsen DataTable1, gridille ilmestyy ne pari pylvästä jotka loin juuri, eli tähän mennessä kaikki tuntuu menevän oikein... "

Siinä olisi pitänyt valita data sourceksi "DataSet1", ja DataTable kuului kohtaan "DataMember"...

Äänestä

Kommentoi aloitusta


aloittelija... kirjoitti:

Olen tässä yrittänyt saada tehdyksi jonkinlaista DataGriddiä, ja jonkinlaisen olen saanutkin, mutta vielä pitäisi saada muutettua solujen leveyttä, tai onnistuuhan sekin, mutta vain oletusarvoja muuttamalla, ja se taas tekee kaikista yhtä leveitä... Mikä on melko turhauttavaa, jos samaan taulukkoon pitäisi saada todella erilaisia tietoja mahdutettua.

Tässä selostus siitä mitä tein:

Aloitan uuden projektin nimellä "test". Piirrän formille "DataGridin".

Lisään projektiin "DataSetin", valitsen ilmestyvästä valikosta "untyped...".
Klikkaan "Properties" ikkunasta "Tables", Klikkaan "Add" nappulaa, "Members" Ruutuun
ilmestyy "Table1", ja viereiseen ruutuun ilmestyy paljon tekstiä...
Klikkaan kohtaa "Columns", ilmestyy uusi ikkuna, joka on ihan samannäköinen kuin edellinenkin, vähän eri teksteillä tosin. Lisään taulukkoon pari "pylvästä"... Suljen ikkunat.

Klikkaan form designerissä sitä DataGridiä, Properties ikkunasta klikkaan "Data Source",
ilmestyvästä valikosta valitsen DataTable1, gridille ilmestyy ne pari pylvästä jotka loin juuri, eli tähän mennessä kaikki tuntuu menevän oikein...

Klikkaan kohtaa "TableStyles", ilmestyy taas uusi "Collection editor", mikä on ulkonäöltään
täysin identtinen kahden edellisen kanssa, paitsi vähän eri otsikoilla... Painan "Add" nappulaa.

Valitsen ilmestyvästä valikosta kohdan "GridColumnStyles", taas ilmestyy uusi "Collection editor" Painan "Add" nappia pari kertaa, "Members" ruutuun ilmestyy kaksi riviä "DataGridTextBoxColumn1" ja
"...2".

Näiden ominaisuuksia muutan siten, että ykkösen "MappinNameksi" Laitan "Column1", ja kakkoseen
vastaavasti "Column2", jotta voisin jotenkin huomata näiden tekevän jotain muutan jotain muutakin,
Asetan leveydet selvästi toisistaan poikkeaviksi (100 ja 20).

Suljen editorit, mikään ei kuitenkaan muuttunut. varmuuden vuoksi ajan ohjelman, ei mitään vaikutusta, solut ovat ihan yhtä leveitä.

Ymmärtääkseni "TableStyles Collection editorissa" olisi pitänyt sielläkin laittaa joku "Mapping Name", mutta siellä olevassa valikossa ei ollut kuin ruksi, ja sen perässä teksti "none".

En oikein käsitä missä tein virheen... Olen nyt jo muutaman päivän ajan ns. "hakannut päätä seinään", ja aina sama tulos. Ohjeitakin olen lukenut, ja paljonkin... Mutta lukeminen ja ymmärtäminen ovat ilmiselvästi kaksi eri asiaa...

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu