</div> protected"> </div> protected"> </div> protected" />

Een algemene lijst met objecten binden aan ListView en vervolgens de gebonden lijst bijwerken

Ik heb een ListView die is gebonden aan een generieke lijst met objecten die ik heb gemaakt.


    
        
<div class="title_small"> </div>


protected void btnSave_Click(object sender, EventArgs e) { //Loop through each item in the listview for (int i = 0; i < lvwSMSConfig.Items.Count(); i++) { //Some code to check to see if the value was updated //If it was, call UpdateItem lvwSMSConfig.UpdateItem(i,true); } } protected void lvwSMSConfig_ItemUpdating(Object sender, ListViewUpdateEventArgs e) { TextBox iFirstValue= (TextBox)lvwSMSConfig.Items[e.ItemIndex].FindControl("iFirstValue"); TextBox iSecondValue= (TextBox)lvwSMSConfig.Items[e.ItemIndex].FindControl("iSecondValue"); TextBox iThirdValue= (TextBox)lvwSMSConfig.Items[e.ItemIndex].FindControl("iThirdValue"); myObjectList[e.ItemIndex].FirstValue= iFirstValue.Text; myObjectList[e.ItemIndex].SecondValue= iSecondValue.Text; myObjectList[e.ItemIndex].ThirdValue= iThirdValue.Text; }

De bovenstaande code (sommige delen aangepast voor openbaar plaatsen) werkt prima, maar ik weet niet of dit de beste manier is om mijn doel te bereiken. Is er een meer directe route die ik zou moeten nemen?

0

1 antwoord

Ik zou zeggen, nee dit is niet de "gemakkelijkste" manier.

Heeft u overwogen om een ​​databronbesturing te gebruiken? Iets als een ObjectDatasource of SQLDataSource-besturingselement is in dergelijke gevallen erg nuttig.

There are other templates you can use for instance, an Update should use the EditItemTemplate. I did a quick search to get you a link to some more detailed information about how to best utilize the Listview control. You will notice for instance you wont have to do FindControl calls. Link

0
toegevoegd