Creare componente vizuale dinamic
Last Updated: Apr 18 2014 19:59, Started by
nikushoru
, Apr 18 2014 13:47
·
0
#1
Posted 18 April 2014 - 13:47
Cum de creat componente vizuale dinamic ? C#
Iată eu am forma : [ https://i.imgur.com/L3zT8BT.png - Pentru incarcare in pagina (embed) Click aici ] După cum vedeți în așa format trebuie să apară fiecare înregistrare din baza de date SQL: foto, id, nume, data de naștere, și timpul rămas pînă la ziua de naștere + 3 butoane. Cum de făcut ca pentru fiecare înregistrare din baza de date să se genereze automat cîte un groupbox cu toate aceste componente vizuale (20 înregistrări - 20 componente vizuale de fiecare tip) ? |
#2
Posted 18 April 2014 - 13:56
Faci o lista de groupboxuri d-astea. Si in while-ul reader-ului de SQL creezi un obiect nou groupbox cu info tau din BD si la final adaugi la lista. Cu lista aia iti populezi tu pe ce form vrei.
|
#3
Posted 18 April 2014 - 14:12
Poți explica mai detaliat ? Cum se face automat lista cu goupboxuri ? Doar asta depinde de nr. de înregistrări din BD.
|
#4
Posted 18 April 2014 - 15:39
Fiecare Form are un container denumit Controls. Introduci in el ce Control vrei si va aparea pe form.
Ca sa nu ai insa batai de cap cu pozitionarea, folosesti mai bine un TableLayoutPanel. |
#5
Posted 18 April 2014 - 16:42
Creezi un nou groupbox, ii alegi pozitia
GroupBox bg=new GroupBox(); bg.position..... Creeze restul obiectelor si le alegi pozitia, si le dai textul, fontul daca e cazul, etc. Label l1=new Label(),l2=new Label()..... l1.position... Le adaugi in groupbox bg.Controls.Add(l1,l2...,bg). Adaugi groupboxul la form, this.Controls.Add(gb); Ceva de genul, nu e foarte greu, poti tine minte ultima coordonata Y a fiecarui groupbox, asa le vei putea face usor una dupa alta. |
#6
Posted 18 April 2014 - 17:07
Mulțumesc.
Mai am o întrebare: Cum de creat mai multe countdown-e (countdown-uri) să lucreze concomitent ? Edited by nikushoru, 18 April 2014 - 17:08. |
#7
Posted 18 April 2014 - 17:08
#8
Posted 18 April 2014 - 17:12
Tu traduci cu google sau ce-i cu expresia asta "cum de creat"?
|
#9
Posted 18 April 2014 - 17:21
paulicaFX, on 18 aprilie 2014 - 17:08, said:
Ce e un countdown? Explica mai bine ce doresti [ https://www.youtube-nocookie.com/embed/M2dhD9zR6hk?feature=oembed - Pentru incarcare in pagina (embed) Click aici ] dani.user, on 18 aprilie 2014 - 17:12, said:
Tu traduci cu google sau ce-i cu expresia asta "cum de creat"? Am în vedere cum de implementat ca să lucreze toate concomitent, iar crearea lor să fie dinamică. Scopul e de a calcula cît timp a rămas pînă la ziua de naștere. În baza de date sunt, de exemplu 20 de înregistrări. Și mă înteresează cum să creez pentru fiecare înregistrare cîte un countdown și să-l pun în cîte un textlabel ? |
#10
Posted 18 April 2014 - 18:14
nu mai bine unul singur care sa tina evidenta (scazand cate o unitate) la toate elementele?
|
|
#11
Posted 18 April 2014 - 18:24
MarianG, on 18 aprilie 2014 - 18:14, said:
nu mai bine unul singur care sa tina evidenta (scazand cate o unitate) la toate elementele? nici prin cap nu mi-a trecut, dar cum asta ? uite cum fa eu: am un array cu textlabel-uri, și într-un while, atît timp cît nu s-a ajuns la ultimul label fac: n + 1 = nr de ordine al textlabelului din array int day, month, year; int g = 0; using (SqlCommand cmd = new SqlCommand("select dayOfBirthday, monthOfBirthday, yearOfBirthday from Person where idPerson ='" + n + 1 + "'", DataBaseConnection.connection)) { using (SqlDataReader dr = cmd.ExecuteReader()) { while (dr.Read()) { Int32.TryParse(dr[0].ToString(), out day); Int32.TryParse(dr[1].ToString(), out month); Int32.TryParse(dr[2].ToString(), out year); DateTime EventDate = new DateTime(year, month, day); TimeSpan remaining = EventDate - DateTime.Now; LabelNameArray[n].Text = "Time remaining : " + remaining.Days + " days"; g++; } } } doar că nu-mi afișează rezultatul Edited by nikushoru, 18 April 2014 - 18:27. |
#12
Posted 18 April 2014 - 19:59
un array de DATE
la fiecare interval treci prin tot vectorul, comparand diferenta de timp sau creei un element nou care contine un timer, si accepta parametrii doriti nume / prenume / data nastere |
Anunturi
Bun venit pe Forumul Softpedia!
▶ 0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users