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

dinamicko punjenje asp.repeater/a

[es] :: .NET :: dinamicko punjenje asp.repeater/a

[ Pregleda: 1652 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

ZoranDE
Programer

Član broj: 299032
Poruke: 56
*.dynamic.sbb.rs.



+1 Profil

icon dinamicko punjenje asp.repeater/a29.11.2015. u 22:04 - pre 102 meseci
drugari pomagajte, vise nemam ideje.

citram forume na netu, probao sam i sam sve i svasta, ali nikako da ovo zavrsim.

radim u VS.NET 2008 , Web aplikacija

Imam na web stranici, u UpdatePanelu, Repeater controlu.

ok, nije problem da ovu kontrolu napunim sa vrednostima iz baze.

ali, kako da u repeater ubacim vrednosti sa forme ?

znaci, na formi imam 2 polja: jedno text polje, i jedan drop down list, ispod dugme "Dodaj" .
Broj dodavanja tj redova moze da bude 10-ak, i sad ne znam kako da popunim repeater ?
Ok, napravio sam u code behind dinamicku listu, i nije problem da dodam prvi red, ali, kako da mi ta lista bude definisana na globalnom nivou stranice, a ne na nivou dugmeta "Dodaj" .
jer svaki novi zapis koji dodajem u listu, on pregazi prosli.

pozdrav i hvala unapred za pomoc
 
Odgovor na temu

dusans
Stojanov Dušan
Pančevo

Član broj: 9551
Poruke: 1343
*.dynamic.sbb.rs.



+311 Profil

icon Re: dinamicko punjenje asp.repeater/a29.11.2015. u 22:20 - pre 102 meseci
Postavi ovde kod za click Dodaj dugmeta da probam da shvatim šta u stvari radiš.
 
Odgovor na temu

ZoranDE
Programer

Član broj: 299032
Poruke: 56
*.dynamic.sbb.rs.



+1 Profil

icon Re: dinamicko punjenje asp.repeater/a29.11.2015. u 22:36 - pre 102 meseci
ovako, u odvojenoj klais DiagnosisDTO sam definisao klasu Diagnosis , sa 2 propertija i 1 listom

public class DiagnosisDTO
{
public int DiagnosisID
{ get; set; }
public string DiagnosisName
{ get; set; }

public List<DiagnosisDTO> tempList
{get;set;}

public void AddDiagnosis(ExaminationDiagnosisDTO dto)
{
tempList.Add(dto);
}
}

prvo na Page_load definsem tempDto objekat, kao novu instancu klase DiagnosisDTO.

public DiagnosisDTO tempDto = new DiagnosisDTO();


a na web formi na dugme Dodaj se okida ovaj kod

protected void btnAddDiagnosis_Click(object sender, EventArgs e)
{
if (hdnExaminationID.Value == string.Empty)
{
tempDto = TakeExDiData(); < -- OVDE SKUPLJAM PODATKE SA FORME ZA UNOS U REPEATER
tempDto.tempList = new List<DiagnosisDTO>(); < -- OVAKO RADI, ALI, KAD GOD KLIKNEM NA ADD, FORMIRA SE NOVA LISTA, I SAMO 1 RED
tempDto.tempList.Add(tempDto); < -- MOGU DA UBACIM. Interesujem me, gde da definisem listu, da se ne bi stalno pravila
< -- kad kliknem na Add button ?

// POVEZIVANJE REPEATERA SA LISTOM
repDiagnosis.DataSource = tempDto.tempList;
repDiagnosis.DataBind();
}
}


// OVDE SKUPLJAM PODATKE SA FORME
private DiagnosisDTO TakeExDiData()
{
DiagnosisDTO dto = new DiagnosisDTO();

dto.DiagnosisID = ControlUtil.GetIntValue(ddlDiagnosis.SelectedValue);
dto.DiagnosisName = ddlDiagnosis.SelectedItem.ToString();
return dto;
}

Pozdrav i hvala puno za angazovanje
 
Odgovor na temu

dusans
Stojanov Dušan
Pančevo

Član broj: 9551
Poruke: 1343
*.dynamic.sbb.rs.



+311 Profil

icon Re: dinamicko punjenje asp.repeater/a29.11.2015. u 22:49 - pre 102 meseci
Moraš da sačuvaš listu između postback-ova, možeš da koristiš Session, ViewState ili nešto treće.

Pošto je lista kratka, predlažem ti ViewState:
Code:

// Deklaracija
public DiagnosisDTO tempDto 
{
    get { return ViewState["tempDto"] as DiagnosisDTO; }
    set { ViewState["tempDto"] = value; }
}

// Ovo ide u Page_load
tempDto = tempDto ?? new DiagnosisDTO(); 
tempDto.tempList = tempDto.tempList ?? new List<DiagnosisDTO>();

protected void btnAddDiagnosis_Click(object sender, EventArgs e)
{
    if (hdnExaminationID.Value == string.Empty)
    {
        tempDto = TakeExDiData();
        tempDto.tempList.Add(tempDto);
        repDiagnosis.DataSource = tempDto.tempList;
        repDiagnosis.DataBind();
    }
}

https://msdn.microsoft.com/en-...ary/ms227551%28v=vs.85%29.aspx
 
Odgovor na temu

ZoranDE
Programer

Član broj: 299032
Poruke: 56
*.dynamic.sbb.rs.



+1 Profil

icon Re: dinamicko punjenje asp.repeater/a30.11.2015. u 10:14 - pre 102 meseci
Hvala ti najlepse na pomoci !!

nisam uspeo preko ViewState, ali sam napravio Session listu, i zavrsio posao ! Uopste se nisam setio Session objekta, da moze tako da se resi stvar !

sada samo moram da vidim kako se radi izbacivanje sa liste, da li Session lista ima indexe, npr. ako treba da se izbaci neka stavka iz sredine liste.

ali to mislim da nije neki problem.

pozdrav i hvala jos jednom !
 
Odgovor na temu

[es] :: .NET :: dinamicko punjenje asp.repeater/a

[ Pregleda: 1652 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

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