2009-07-05 6 views
1
private void BindDataList() 
{ 
     int userId = Convert.ToInt32(ProfileInfo.GetUserID()); 
     DataList1.DataSource = CatalogAccess.GetAddressByUserID(userId); 
     DataList1.DataBind(); 
     foreach (DataListItem item in DataList1.Items) 
     { 
      Label lbl = (Label)item.FindControl("lbl"); 
      lbl.Text = "myLabel"; 
     } 
    } 

    protected void DataList1_EditCommand(object source, DataListCommandEventArgs e) 
    { 
     int userId = Convert.ToInt32(ProfileInfo.GetUserID());   
     DataList1.EditItemIndex = e.Item.ItemIndex; 
     DataList1.DataSource = CatalogAccess.GetAddressByUserID(userId); 
     DataList1.DataBind(); 
     Label lbl = (Label)e.Item.FindControl("lbl") as Label; 
     lbl.Text = "edit mode"; 
    } 

<asp:DataList ID="DataList1" runat="server" oneditcommand="DataList1_EditCommand" > 
     <ItemTemplate> 
        <asp:Label ID="lblAddressID" runat="server" Text='<%# Bind("addressID") %>'/> 
        <asp:Label ID="lbl" runat="server" /> 
        <asp:Button runat="Server" ID="cmdEdit" CommandName="Edit" Text="Edit"/> 
      </ItemTemplate>    
      <EditItemTemplate> 
        <asp:TextBox ID="txtAddressID" runat="server" Text='<%# Bind("addressID") %>' BackColor="#FFFF66" />   
        <asp:Label ID="lbl" runat="server"/> 
        <asp:Button runat="Server" ID="cmdUpdate" CommandName="Update" Text="Update" /> 
        <asp:Button runat="Server" ID="cmdCancel" CommandName="Cancel" Text="Cancel"/> 
      </EditItemTemplate> 
     </asp:DataList> 

Répondre

1

Etape 1: Les données se lient quelque part

Étape 2: gérer l'événement OnItemDataBound et trouver votre contrôle ici, semblable à ce qui suit ...

protected void DataList1__ItemDataBound(Object sender, DataListItemEventArgs e) 
    { 
    if (e.Item.ItemType == ListItemType.EditItem) 
    { 
     Label lbl = (Label)e.Item.FindControl("lbl"); 
     lbl.Text = "edit mode"; 
    } 
    } 

Pour plus d'informations sur cet événement, jetez un oeil à la MSDN example. Vous devez vérifier le ItemType. Dans ce cas, il est en mode édition, sinon vous vérifiez un élément de liste ou autre, etc.

+0

Fonctionne, Merci beaucoup –

Questions connexes