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

Pomoc oko ListBox-a

[es] :: .NET :: .NET Desktop razvoj :: Pomoc oko ListBox-a

[ Pregleda: 2839 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

bigguy
borisav ignjatov
nista
zrenjanin

Član broj: 87859
Poruke: 267
*.zrlocal.net.



+1 Profil

icon Pomoc oko ListBox-a13.03.2009. u 12:03 - pre 183 meseci
Imam dva pitanja za ListBox, a prvo je:
Da li je moguce da omogucim korisniku da markira vise podatke koji su ucitani u ListBox-u, i kako to da izvedem?
A drugo se nadovezuje na prvo i glasi:
Kako da obezbedim da se markirani podaci u ListBox-u (znaci vise njih) skladiste u bazu, ali tako da se svaki markiran podatak memorise u novi red tabele?
 
Odgovor na temu

Igor Gajic

Član broj: 93194
Poruke: 747
93.86.81.*



+987 Profil

icon Re: Pomoc oko ListBox-a13.03.2009. u 16:33 - pre 183 meseci
Citat:

Da li je moguce da omogucim korisniku da markira vise podatke koji su ucitani u ListBox-u, i kako to da izvedem?



Imas u properties-u opciju SelectionMode, izaberi MultipleExtended.

Citat:

Kako da obezbedim da se markirani podaci u ListBox-u (znaci vise njih) skladiste u bazu, ali tako da se svaki markiran podatak memorise u novi red tabele?


Code:

            ListBox.SelectedObjectCollection so = listBox1.SelectedItems;
            foreach (object o in so)
            {
                //Formiranje INSERT STRINGA/KOMANDE za svaki objekat posebno....
                //Izvrsavanje insert komande
            }
 
Odgovor na temu

bigguy
borisav ignjatov
nista
zrenjanin

Član broj: 87859
Poruke: 267
*.dynamic.sbb.rs.



+1 Profil

icon Re: Pomoc oko ListBox-a13.03.2009. u 18:56 - pre 183 meseci
Ali ako mi je "o" object kako da ga insertujem u tabelu?
 
Odgovor na temu

Igor Gajic

Član broj: 93194
Poruke: 747
93.86.81.*



+987 Profil

icon Re: Pomoc oko ListBox-a13.03.2009. u 19:23 - pre 183 meseci
Nisi naveo koje podatke stavljas u ListView. String, vise stringova, neke svoje objekte,....

Kastuj object u tip podatka koji si ubacio u ListView pa odatle uzmi podatke koji ti trebaju.

Ako nisi siguran kog tipa je o onda stavi breakpoint na foreach i gledaj u Watch prozoru sta ti kaze za o.
 
Odgovor na temu

bigguy
borisav ignjatov
nista
zrenjanin

Član broj: 87859
Poruke: 267
*.dynamic.sbb.rs.



+1 Profil

icon Re: Pomoc oko ListBox-a15.03.2009. u 11:31 - pre 183 meseci
Za "o" kaze da je DataRowView. Kastovo sam ga pomocu metode ToString() ali mi problem nastaje zato sto petlja foreach mi samo izbroji broj selektovanih items ali njihove vrednosti ne pamti, tako da mi u tabeli onda skladisti tekst System.Data.DataRowView. ListBox punim preko DataSource: tblStaraBindingSource vrednostima iz tblStara, a selektovane vrednosti bi trebalo da cuvam u tblNova. Imali nacina da uskladistim vrednosti selektovane u ListBox-u?
 
Odgovor na temu

Igor Gajic

Član broj: 93194
Poruke: 747
79.101.147.*



+987 Profil

icon Re: Pomoc oko ListBox-a15.03.2009. u 12:48 - pre 183 meseci
Ok.


Probaj da ovako kastujes:

Code:

DataRowView temp=((DataRowView)o);


Tako dobijes red u tabeli. Odredjenim vrednostima pristupas normalno, dakle mozes koristiti:

temp[0];


Sto predstavlja prvu kolonu u tblStara;
 
Odgovor na temu

bigguy
borisav ignjatov
nista
zrenjanin

Član broj: 87859
Poruke: 267
*.dynamic.sbb.rs.



+1 Profil

icon Re: Pomoc oko ListBox-a15.03.2009. u 14:53 - pre 183 meseci
Imam nov problem Sada mi tabelu popuni sa brojevima redova, a ne sa njihovim vrednostima. Caka je u tome sto je meni punjenje ListBox-a promenjivo, odnosno korisnik moze brisati ili upisivati nove redove u tblStaro pa mi sad to dosta komplikuje kako da resim upis u tblNovo. Evo i koda:
Code:

    public partial class Form2 : Form
    {
        public Form2()
        {
            InitializeComponent();
        }

        clsFunctions clsFunc = new clsFunctions();

        private void btnOK_Click(object sender, EventArgs e)
        {
            ListBox.SelectedObjectCollection so = listBox1.SelectedItems;
        
            foreach (object o in so)
            {
                DataRowView temp = ((DataRowView)o);
                string item = temp[0].ToString();

                clsFunc.DodavanjeVrednosti(item);
            }
         }
    }

   public class clsFunctions:Proba.Class1
    {
        public void DodavanjeVrednosti(string vrednost)
        {
            string sSQL = "INSERT INTO tblNovo(Vrednost) VALUES ('" + vrednost + "')";
            ExecuteSQL(sSQL);
        }
    }
    public class Class1
    {
        protected void ExecuteSQL(string sSQL)
        {
            SqlCommand cmd = new SqlCommand(sSQL, conn);
            try
            {
                conn.Close();
                conn.Open();
                cmd.ExecuteNonQuery();
            }
            finally
            {
                conn.Close();
            }
        }
    }
 
Odgovor na temu

Igor Gajic

Član broj: 93194
Poruke: 747
77.46.196.*



+987 Profil

icon Re: Pomoc oko ListBox-a15.03.2009. u 15:03 - pre 183 meseci
Koja ti je struktura tabele tblStara ???

Npr ako imas tabelu:

Code:

CREATE TABLE tblStara
(
idStara INT PRIMARY KEY IDENTITY,   -- Ova kolona ima index 0
vrednost CHAR(50)                            -- Ova kolona ima index 1
);



onda ce ti

Code:

 string item = temp[0].ToString();


vracati idStara.

A tebi treba :

Code:

 string item = temp[1].ToString();


da dodjes do prave vrednosti.

 
Odgovor na temu

mayana
Zrenjanin

Član broj: 176040
Poruke: 82
77.46.188.*



Profil

icon Re: Pomoc oko ListBox-a18.03.2009. u 11:32 - pre 183 meseci
ja sam radila tako nesto u nekom seminarskom, kao imas sve unete ucenike, pa ti biras ucenika iz listboxa svi ucenici i klikom na button odredjene prebacujes u list box odelenje, da formiras novo odelenje od odabranih ucenika. evo ti kod, mada sasvim sigurno nije optimizovan i ima zilion gresaka, al mozda nesto pomogne. radi.... ali verovatno nije najbolje resenje, reci ce ti iskusniji.

Code:

private void button1_Click(object sender, System.EventArgs e)
        {
                //unos u list box
                if (this.clbSviUcenici.CheckedItems.Count>0)
                {
                    this.lbOdabraniUcenici.Items.Clear();
                    foreach (string item in this.clbSviUcenici.CheckedItems)
                    {
                        this.lbOdabraniUcenici.Items.Add(item.ToString());
                        this.lbOdabraniUcenici.SelectedItem=item;
                        //unos u bazu
                        broj = this.lbOdabraniUcenici.SelectedItem.ToString();
                        samoBroj = broj.Remove(broj.IndexOf(" "),broj.Length-broj.IndexOf(" "));
                        idu = Convert.ToInt32(samoBroj);
                        string idodel=this.txtID.Text;
                                    
                    
                        //provera
                        
                        foreach (DataRow dr in this.dsPripada1.Tables["Pripada"].Rows)
                        {
                            if (idu.ToString()==dr["id ucenika"].ToString())        
                            {
                                stani=true;
                            MessageBox.Show("Ucenik je vec dodeljen odelenju");
                            }

                        }

                            if (stani==false)
                            {

                                DataRow row = this.dsPripada1.Tables["Pripada"].NewRow();
                                this.sqlConnection1.Close();
                                this.sqlConnection1.Open();
                                this.sqlDataAdapterPripada.InsertCommand=new SqlCommand("INSERT INTO Pripada ([id ucenika], [id odelenja]) VALUES ("+idu+", '"+idodel+"')", this.sqlConnection1);
                                this.sqlDataAdapterPripada.InsertCommand.ExecuteNonQuery();
                                this.sqlDataAdapterPripada.Update(this.dsPripada1, "Pripada");
                                this.sqlConnection1.Close();
                                MessageBox.Show("Uspesna dodela");
                                stani=true;
                            }
                    
                        }
                
                    }
                
        
            
                if (stani==true)
                {

                    for (int i=0; i<this.clbSviUcenici.Items.Count; i++)
                        this.clbSviUcenici.SetItemChecked(i, false);
                    this.lbOdabraniUcenici.Items.Clear();
                }
            
                
            }

... ovde ima nesto sto se nikako ne slaze... ;)
 
Odgovor na temu

bigguy
borisav ignjatov
nista
zrenjanin

Član broj: 87859
Poruke: 267
*.zrlocal.net.



+1 Profil

icon Re: Pomoc oko ListBox-a20.03.2009. u 10:12 - pre 183 meseci
A kako da u Listbox-u napravim da imam ono npr. Podesavanje, Kreiranje, Brisanje,.... a da ispred svakog items-a stoji plus, tako da kada kliknem na njega onda mi se otvore subitems-i onako povezani sa isprekidanim strelica sa plusem koji se sad permutirao u minus?
 
Odgovor na temu

bigguy
borisav ignjatov
nista
zrenjanin

Član broj: 87859
Poruke: 267
*.zrlocal.net.



+1 Profil

icon Re: Pomoc oko ListBox-a20.03.2009. u 12:10 - pre 183 meseci
.....ili je to u panelu odradjeno?! Ali opet kako onda?
 
Odgovor na temu

[es] :: .NET :: .NET Desktop razvoj :: Pomoc oko ListBox-a

[ Pregleda: 2839 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

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