[1.1] Recupérer des textbox créé dynamiquement dans un DataGrid
:hello:
J'ai besoin par ligne de mon DataGrid d'autant de TextBox + RadioButtonList que j'ai de lignes dans ma table liée.
Lors de l' ItemDataBound je fais :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
int i = 1;
foreach (CvrShippingContainer cvrContainer in cvr.ShippingContainerList)
{
TextBox t = new TextBox();
t.ID = "container" + i;
t.Text = cvrContainer.NumberRef.ToString();
e.Item.Cells[7].Controls.Add(t);
RadioButtonList rbl = GetRadioButtonContainerType();
rbl.ID = "rbl" + i;
e.Item.Cells[7].Controls.Add(rbl);
rbl.Items.FindByValue(cvrContainer.Capacity.ToString()).Selected = true;
i++;
} |
Ma ligne edité affiche bien mes TextBox + Rbl avec des données correctes.
Le souci est quand j'update la ligne je ne retrouves pas mes Controls
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
//Retrouves tous les containers
foreach (Object o in ((XamuCustomDataGrid)source).Items[e.Item.ItemIndex].Controls)
{
TextBox t = o as TextBox;
if (t != null)
{
CvrShippingContainer cvrCon = new CvrShippingContainer();
//Retrouves la capacité / au textbox
RadioButtonList rbl = e.Item.Cells[7].FindControl(t.ID.Replace("container","rbl")) as RadioButtonList;
if (rbl != null)
{
cvrCon.Capacity = int.Parse(rbl.SelectedValue);
cvrCon.NumberRef = t.Text;
myNewShippingHeader.ShippingContainerList.AddShippingContainer(cvrCon);
}
}
} |
Comment faire pour récuperer ces Controls
J ai essayé avec le source ou avec e, les 2 ne voyent pas de controls :(
Merci :yaisse2: