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...
DataGrid...
3
252
Vastaukset
- Petri_Petri
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.
- aloittelija...
Anteeksi, että kyselen tyhmiä, mutta en tällä hetkellä osaa juuri enempää kuin tuossa selostin...
Eli miten ne leveydet sitten pitäisi määritellä?
- aloittelija...
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"...
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Tykkään sinusta tosi tosi paljon
Siksi en pysty sisäistämään sitä, että se ei ole molemminpuolista. Sattuu liikaa. En osaa käsitellä sitä tunnetta, koska513467- 1562099
Kaupan kassalla kannataa olla kylmä käytös
https://www.is.fi/taloussanomat/art-2000010488540.html "19-vuotias Minja ja 59-vuotias Anne työskentelevät sillä todelli2041791Mitä tehdä asialle?
Jos laitan deitti-ilmon "40-vuotias nainen etsii seuraa" niin ketään ei kiinnosta (korkeintaan paria runkkaripenaa joill1351699- 801165
- 2341104
Mitä helvettiä pakolaisille pitäisi tehdä RAJALLA?
Jos Venäjä työntää rajalle pakolaisia ja tekee Suomelle selväksi että heidän puolelleen ei ole pakolaisilla asiaa - mitä2731045- 130999
Olen pahoillani mies
Olen surullinen puolestasi, ettet saanut kaipaamaasi naista. Yrititkö lopulta edes? Teistä olisi tullut hyvä pari52929- 72895