Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

data grid i text box-ovi c#

[es] :: .NET :: .NET Desktop razvoj :: data grid i text box-ovi c#

[ Pregleda: 4550 | Odgovora: 19 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

TARMI
Zrenjanin

Član broj: 87119
Poruke: 88
*.ptt.yu.

Sajt: www.burek.co.yu


Profil

icon data grid i text box-ovi c#07.05.2007. u 14:41 - pre 205 meseci
Problem: imam data grid i text box-ove i to punim iz jedne tabele iz access baze (to je radjeno za Artikle) i sada kada hocu da dodam novi artikal i to uradim u data gridu i snimim on mi to snimi i u bazi a kada dodam novi artikal pomocu text box-a i snimim on mi ne snimi u bazi. Snimam pomocu ovog koda:

da_Artikli.Update(ds_Artikli,"Artikli");
dgrArtikli.ReadOnly = true;

e sad pitanje je sta treba da uradim da bi snimio u bazi ono sto dodajem u text box-ove????

pomozite

pitajte me ako nesto nisam dobro objasnio posto je moguce da nisam bio dovoljno jasan.
 
Odgovor na temu

gm2004

Član broj: 27284
Poruke: 144
194.106.174.*



Profil

icon Re: data grid i text box-ovi c#07.05.2007. u 16:43 - pre 205 meseci
DataTable objekat ima NewRow property, koje vraca DataRow sa semom kolona iz DataTable objekta. Ovaj DataRow trebas da popunis sa podacima iz textBox-ova, zatim ga dodas u Rows kolekciju pomocu Add mehtoda, i na kraju pozoves Update method.
 
Odgovor na temu

TARMI
Zrenjanin

Član broj: 87119
Poruke: 88
*.ptt.yu.

Sajt: www.burek.co.yu


Profil

icon Re: data grid i text box-ovi c#10.05.2007. u 00:32 - pre 205 meseci
Jooj gm2004 moze neki primer da bi bolje shvatio??? Ako ti nije tesko i ako imas vremena.
 
Odgovor na temu

roberto555
Croatia

Član broj: 64744
Poruke: 451
*.adsl.net.t-com.hr.



Profil

icon Re: data grid i text box-ovi c#10.05.2007. u 11:33 - pre 205 meseci
@tarmi ti si pacijent :))

Code:

DataTable dt=new DataTable();

dt.Columns.Add("ime");
dt.Columns.Add("prezime");
dgv.DataSource=dt;//dgv ti je data grid

button_click recimo
{
DataRow dr =dt.NewRow();
dr["ime"]=txtIme.text;//txtime ti je text box u koji si recimo upisao ime
dr["prezime"}=txtprezime.text;
dt.rows.add(dr);
dt.acceptChanges();
//i sad imaš ovo što si inače upisivao u sam datagrid, upisano iz text box-ova, napraviš još update
}


i nemoj reči da bi ti nešto jednostavnije, pa da dam jednostavniji primjer :))
----Roberto----
 
Odgovor na temu

TARMI
Zrenjanin

Član broj: 87119
Poruke: 88
*.ptt.yu.

Sajt: www.burek.co.yu


Profil

icon Re: data grid i text box-ovi c#10.05.2007. u 12:58 - pre 205 meseci
Stvarno je jednostavno ali ja kao prvo ne znam gde da ubacim ovo, odnosno gde se to kuca:

DataTable dt=new DataTable();

dt.Columns.Add("ime");
dt.Columns.Add("prezime");
dgv.DataSource=dt;//dgv ti je data grid

i taj update bi mogao da mi napises ako imas vremena>

stvarno sam pacijent
 
Odgovor na temu

roberto555
Croatia

Član broj: 64744
Poruke: 451
*.adsl.net.t-com.hr.



Profil

icon Re: data grid i text box-ovi c#10.05.2007. u 13:14 - pre 205 meseci
ovo stavi u događaj klik gumba sa kojim želiš da dodaš ovo iz text box-ova:

Code:

button_click recimo
{
DataRow dr =dt.NewRow();
dr["ime"]=txtIme.text;//txtime ti je text box u koji si recimo upisao ime
dr["prezime"}=txtprezime.text;
dt.rows.add(dr);
dt.acceptChanges();
//i sad imaš ovo što si inače upisivao u sam datagrid, upisano iz text box-ova, napraviš još update

tvojAdapter.update(dt); //ti koristiš dataset tak da mjesto ovog dt koji sam koristio za primjer radiš sa tabelom u datasetu
}

a ovo nemoj nikud pisati to je samo tak za primjer, jer imaš svoj dataset,
Code:

DataTable dt=new DataTable();

dt.Columns.Add("ime");
dt.Columns.Add("prezime");
dgv.DataSource=dt;//dgv ti je data grid

i svugdje umjesto dt stavljaj "dataset.tabela" koju koristiš,
----Roberto----
 
Odgovor na temu

TARMI
Zrenjanin

Član broj: 87119
Poruke: 88
*.ptt.yu.

Sajt: www.burek.co.yu


Profil

icon Re: data grid i text box-ovi c#11.05.2007. u 00:12 - pre 205 meseci
Hvala ali evo probao sam i evo koje su greske>

Prvo ovako izgleda "moj" kod:

private void button1_Click_1(object sender, System.EventArgs e)
{
DataRow dr = ds_Artikli.NewRow();
dr["VP_cena"]=textBox2.text;//txtime ti je text box u koji si recimo upisao ime
dr["MP_cena"]=textBox3.text;
ds_Artikli.rows.add(dr);
ds_Artikli.AcceptChanges();

da_Artikli.Update(ds_Artikli);

a greske koje prijavljuje su:

The name 'dr' does not exist in the class or namespace 'Proba.frmArtikli'
The type or namespace name 'DataRow' could not be found (are you missing a using directive or an assembly reference?)
 
Odgovor na temu

negyxo
Aleksandar Perkuchin

Član broj: 29751
Poruke: 898
*.sksyu.net.



+171 Profil

icon Re: data grid i text box-ovi c#11.05.2007. u 08:27 - pre 205 meseci
Koristi BindingSource. Taj BindingSource mozes posle dodeliti i dataGridu kao DataSource i textboxu kao DataBindings, recimo, na Text property. Ako ti je sve na jednoj formi bice ti sve lepo sinhronizovano.
 
Odgovor na temu

roberto555
Croatia

Član broj: 64744
Poruke: 451
*.adsl.net.t-com.hr.



Profil

icon Re: data grid i text box-ovi c#11.05.2007. u 08:38 - pre 205 meseci
Citat:

private void button1_Click_1(object sender, System.EventArgs e)
{
DataRow dr = ds_Artikli.NewRow();
dr["VP_cena"]=textBox2.text;//txtime ti je text box u koji si recimo upisao ime
dr["MP_cena"]=textBox3.text;
ds_Artikli.rows.add(dr);
ds_Artikli.AcceptChanges();

da_Artikli.Update(ds_Artikli);

a greske koje prijavljuje su:

The name 'dr' does not exist in the class or namespace 'Proba.frmArtikli'
The type or namespace name 'DataRow' could not be found (are you missing a using directive or an assembly reference?)


DataRow ti se nalazi u namespace-u system.data, tako da dodaj using System.Data; ili tu u klik eventu datarow zamjeni sa system.data.datarow, i onda će ti to bit OK,
----Roberto----
 
Odgovor na temu

aleksandarpopov
IT consultant
Senta

Član broj: 57172
Poruke: 484
*.sksyu.net.

Sajt: www.linkedin.com/in/aleks..


Profil

icon Re: data grid i text box-ovi c#11.05.2007. u 08:39 - pre 205 meseci
Citat:
a greske koje prijavljuje su:

The name 'dr' does not exist in the class or namespace 'Proba.frmArtikli'
The type or namespace name 'DataRow' could not be found (are you missing a using directive or an assembly reference?)


Fali ti using System.Data ...

[Ovu poruku je menjao aleksandarpopov dana 11.05.2007. u 20:14 GMT+1]
RTFM
 
Odgovor na temu

TARMI
Zrenjanin

Član broj: 87119
Poruke: 88
*.ptt.yu.

Sajt: www.burek.co.yu


Profil

icon Re: data grid i text box-ovi c#11.05.2007. u 16:48 - pre 205 meseci
negyxo - mozes li napisati kod sa bindingsource na osnovu onog mog koda ispod??

roberto - uradio sam - using System.Data; i opet ne radi nemoj da se ljutis ali ne znam stvarno sta je, a ovo sa eventom te nisam razumeo najbolje probao sam ali nigde ne mogu to da nadjem da promenim.
 
Odgovor na temu

negyxo
Aleksandar Perkuchin

Član broj: 29751
Poruke: 898
*.sksyu.net.



+171 Profil

icon Re: data grid i text box-ovi c#11.05.2007. u 17:17 - pre 205 meseci
Glupo je da ti pisem kog za DataBindnig, jer se gubi smisao designera. Ali tek sad vidim da ti pristupas row-u preko indexera. Mozda ti nije zgodno ali bolje bi bilo da radis sa tipiziranim DataSetom. Ovako i ne moze da se uradi DataBinding iz designera. Tako da si u startu osakacen za jednu funkcionalnost. Pogledaj prvo TableAdapter kako se kreira pa zatim kada to savladas javi se ovde.
 
Odgovor na temu

TARMI
Zrenjanin

Član broj: 87119
Poruke: 88
*.ptt.yu.

Sajt: www.burek.co.yu


Profil

icon Re: data grid i text box-ovi c#11.05.2007. u 23:22 - pre 205 meseci
TableAdapter??? Ja znam da je ovo glupo pitanje ali ja sam pocetnik i imam seminarski i nemam vremena da toliko proucavam pa sam se nadao vasoj pomoci.

Roberto pomagaj!
 
Odgovor na temu

roberto555
Croatia

Član broj: 64744
Poruke: 451
*.adsl.net.t-com.hr.



Profil

icon Re: data grid i text box-ovi c#12.05.2007. u 00:34 - pre 205 meseci
e daj mi pošalji cijeli solution na [email protected] pa opiši šta ti ne štima a ja ću ti tokom dana kad nađem vremena to ispravit i poslat nazad ak želiš, osim ak nije nešta tajno, pa nemožeš :) jer ne znam šta da ti više objasnim, tj. ne znam kako da ti objasnim da bi ti skužio ,bez uvrede), kako si ti došao do tvog dataseta kojeg koristiš (ds_artikli)? kad kreiraš dataadapter odnosno povučeš ga na formu iz toolbox-a, onda ti se pokrene onaj wizard, te nakon što kreiraš konekciju, upit ili sp ili..... itd...(slijediš korake wizarda), doda ti se i novi sqlconnection objekat, tada desni klik na dataadapter i "generate dataset", ak ti ne radi daj probaj umjesto ds_artikli navest i tabelu u datasetu, tj. datatable objekat, ds_artikli.tabela, iako po opisu greške ako si dodato using system.data bi trebalo raditi...

što se tiče databindinga-a, več sam ti rekao kako da binduješ textbox, i combobox, tj.njihovo svojstvo text, gotovo isti postukpak ti je za data grid, a kak ti je več rečeno glupo je da ti pišemo kod kad eleganto to radiš u dizajneru sa par klikova, znam da ti je lakše odavde copy-paste i radi....

Citat:

a ovo sa eventom te nisam razumeo najbolje probao sam ali nigde ne mogu to da nadjem da promenim


ne kužim nemožeš nači taj event ili? dvostruki klik na gumb koji si dodao na formu te prebaci u kod, u click event tog gumba... i tamo umjesto DataRow napiši Sytem.Data.DataRow, ovo system.data ti je namespace tako su ti logički organizirane klase....drugi namespace-ovi unutar glavnog system..., za izbjegavanje kolizije...itd...manje bitno...šta tu ne razumiješ?!?!? inače druge evente imaš u properties prozoru samo gore klikni na onau ikonicu koja ti ima sličicu "munje".... te dvostuki klik u polje dotičnog eventa....
ili
Code:

kontrola.event += pritisni dva puta TAB, i dobit češ isto


Citat:

Ja znam da je ovo glupo pitanje ali ja sam pocetnik i imam seminarski i nemam vremena da toliko proucavam pa sam se nadao vasoj pomoci.


nemoj se ljutiti al ja znam da je glupo što ti kažeš (podebljano) a također i to što ti imaš seminarski nije baš naša stvar, imamo i mi svojih briga, ispita... itd...pa se ne žalimo nikome.... jer koliko ja vidim u ovoj temi a i u nekolko prošlih dobio si jako puno pomoći, pa mislim da se nemoraš nadati pomoći, več bi trebao reči hvala na dobivenoj pomoći! <kažem nemoj se ljutiti ovo ti je dobronamjerno ...)
----Roberto----
 
Odgovor na temu

TARMI
Zrenjanin

Član broj: 87119
Poruke: 88
*.ptt.yu.

Sajt: www.burek.co.yu


Profil

icon Re: data grid i text box-ovi c#12.05.2007. u 15:43 - pre 205 meseci
Roberto poslao sam ti mail i rekao sta da mi ispravis kad budes imao vremena. Zaboravio sam da ti kazem da pored unosa u bazu da pogledas kako bi to radilo i za izmenu (vezano za text box-ove)!!
Pozdrav!!!!!!

Hvala svima koji ste pomagali!!
 
Odgovor na temu

roberto555
Croatia

Član broj: 64744
Poruke: 451
*.adsl.net.t-com.hr.



Profil

icon Re: data grid i text box-ovi c#12.05.2007. u 17:49 - pre 205 meseci
sorry, al ja nisam ništa dobio,., jesi pravu adresu!?! -> [email protected]
----Roberto----
 
Odgovor na temu

negyxo
Aleksandar Perkuchin

Član broj: 29751
Poruke: 898
*.sksyu.net.



+171 Profil

icon Re: data grid i text box-ovi c#13.05.2007. u 11:08 - pre 205 meseci
@TARMI
Mali savet,
jes da si u zurbi ali daleko ces vise 'profitirati' ako malo ulozis vremena u citanje i testiranju nego direktno u implementaciji. Kada vec krenes implementaciju i krenes da otklanjas i pravis resenje 'on the fly' na kraju zavrsis sa losim dizajnom i vecim utorsenim vremenom. TableAdapter nije nista komplikovan, sastoji se od XXXDataAdaptera i DataTabele. Dizajner radi vecinu stvari tako da i nemas mnogo truda oko koda (bar ne u tvom slucaju, kada dodjes u situaciju da ti treba neko genericko resenje onda ces da pizdis na TA ) sve se svodi na klikcanje. Mada ovo ti je vise savet ako mislis da se bavis sa ovim poslom, a ako je za jednokratnu upotrebu (seminarski, diplomski...) onda ti je svejedno.
 
Odgovor na temu

TARMI
Zrenjanin

Član broj: 87119
Poruke: 88
*.ptt.yu.

Sajt: www.burek.co.yu


Profil

icon Re: data grid i text box-ovi c#13.05.2007. u 16:39 - pre 205 meseci
Hvala na savetu.

Ne znam kako ti nije stiglo a poslao sam na [email protected].

evo poslacu ti sad opet
 
Odgovor na temu

bjtetf

Član broj: 77307
Poruke: 117
*.teol.net.



+1 Profil

icon Re: data grid i text box-ovi c#16.05.2007. u 07:54 - pre 205 meseci
U prvobitnom kodu koji ti je poslao roberto trebao si sve da stavis u kod forme, a ne samo vezati onaj dio koda za button click.
Jer u kodu za button ti spominjes DataRow dw=dt. ..., i dt nije definisano.
Tako da ona dva tri reda vezana za dataset i datatable defiinisi na globalnom nivou, a ovo ostalo stavi u button click kako ti je i receno.
Poz
 
Odgovor na temu

ajaalba
Beograd

Član broj: 145579
Poruke: 22
*.eunet.yu.



Profil

icon Re: data grid i text box-ovi c#16.05.2007. u 23:06 - pre 205 meseci
Što bi rekao jedan moj poznanik sve to piše u MSDN-u ... ali ovde svi znaju da i to treba znati uraditi. Evo kako sam ja shvatio rad sa Access bazom i VS designer-om.

Dodaš jednu DataBaseConnection kontrolu iz Toolbox-a -> Data. (Ovde ti je najbitniji connection string [sve lepo iz dizajnera] -> uradi Test connection). Onda dodaš jedan DataAdapter (za sada samo jedan). (ovo ne pišem sa kompjutera na kome mi je instaliran studio tako da kucam iz glave - pa ti ipak konsultuj MSDN za detalje ako ti nešto ne ide).

Zatim iz donjeg dela designer-a (gde su ti iscrtane ikonice za DataConnection i DataAdapter klikneš desnim na DataAdapter (nazovi ga po nekoj tabeli iz baze** npr. daOsoba) i kažeš Configure data adapter. Otvara ti se wizard i stvarno nema ništa lakše: izabereš kreiranu konekciju; Add-uješ odgovarajuću tabelu i odgovarajuće kolone**; primećuješ da se u query delu ovog dijaloga generiše SELECT <Kolone> FROM <NazivTabele> -> upit**; kada si zadovoljan upitom koji će ti vraćati željene podatke u obliku kolona idi desnim u query deo dijaloga i lupi Run. Kada si završio sa ovim delom dobijaš izveštaj o generisanim komandama za INSERT, UPDATE, DELETE, ... gledaj da nemaš ni jedan uzvičnik kod ovih komandi.

Dalje opet ideš desnim mišem na daOsoba. Biraš Generate DataSet. Daš ime DataSet-u (dsSema)

Ovo je najbitniji deo onoga što se tiče prikaza podataka a to je da imaš podatke(kolone) grupisane u tabele(DataAdapter) grupisane u šemu(DataSet) iz koje se lako dobija genijalni objekat DataView radi prikaza podataka na koji god način voliš (u tvom slučaju DataGrid).

E dalje praviš za svaku tabelu tj. za svaku grupu podataka tj. za svaki SELECT koji ti je potreban, (ako si me pratio i pročitao fusnote razumećeš), pojedinačne DataAdapter-e. Kako koji konfigurišeš generiši DataSet (u VS 2003 automatski ti je nudio da se nadovežeš na već postojeći DataSet i to u tvom slučaju treba uraditi jer ne verujem da ti je potrebno više od jedne šeme). Dakle u jednom DataSet-u imaćeš više DataAdapter-a. Čini mi se da ova procedura generiše i *.XSX fajl iz koga se izcrtava šema za DataSet. Ovo ti je kompletna procedura za povezivanje aplikacije i MS ACCESS baze iz VS dizajnera.

Što se tiče koda evo nekih hintova:

DataView dvOsoba = new DataView(dsSema.OSOBA); //OSOBA je ime tabele kojoj DataSet pristupa ovo nije stvarna tabela već njen, nazovi, imidž

dvVeza.RowFilter = "ID_RADNOMESTO = " + <NekiIntegerKojiSlužuKaoFilter>.ToString();// izuzetno brzo izvršavajuća komanda, koja privremeno zadržava samo relevantne podatke (ID_RADNOMESTO je, recimo, kolona u tabeli OSOBA)

foreach (DataRowView drvOsoba in dvOsoba){
if ((int)drvOsoba.Row["ID_RADNOMESTO"] == 2)
string direktorIme = (string)drvOsoba.Row["IME"];
.......
}

Ali ono što je tebi najbitnije, a to je upis u bazu je sledeće:

dsSema.OSOBARow newRowOsoba = (dsSema.OSOBARow) dsSema.OSOBA.NewRow(); //kreira objekat tipa "red tabele koja ti je potrebna sa svojim defult vrednostima za kolone"

/*dodeljivanje vredenosti kolonama - obratiti pažnju na tipove promenljivih*/
newRowOsoba.IME = <TextBoxIme>.Text;
newRowOsoba.PREZIME = <TextBoxPrezime>.Text;
newRowOsoba.ID_RADNOMESTO = Convert.ToInt32(<TextBoxStraniKljuč>.Text);//naravno pazi na exception-e
...

dsSema.OSOBA.AddOSOBARow(newRowOsoba);//dodaješ novi red U !!!DataSet!!!

daOsoba.Update(dsSema.OSOBA);//Update-uješ stvarnu tabelu svojim podacima iz DataSet-a

zahvaljujem se kolegama na mogućim korekcijama. Ipak treba imati u vidu da je ovo sve iz glave.

**ako te stvarno interesuje zasto su ove dve zvezdice stavljene ovde, potraži u MSDN-u (VS 2005) članak o Data Tier-ima... Samo prvih nekoliko strana će ti objasniti koliko duboko rabbit hole goes
http://msdn2.microsoft.com/en-...lationaldatatobusinessentities
burito ... burito
 
Odgovor na temu

[es] :: .NET :: .NET Desktop razvoj :: data grid i text box-ovi c#

[ Pregleda: 4550 | Odgovora: 19 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.