2009-12-23 4 views
1

est-il possible d'accéder à l'événement CouncilIdLabel via l'événement DropDownList_SelectedIndexChanged ?!Accéder à une étiquette via un événement DropDownlist_selectedindexchanged, à la fois dans une Listview

<tr id="Tr10" runat="server"> 
      <td width="110px"> 
       دسته :&nbsp; 
      </td> 
      <td> 
       <asp:DropDownList ID="CategoryDropDownList" runat="server" Font-Names="tahoma" Font-Size="13px" onselectedindexchanged="CategoryDropDownList_SelectedIndexChanged" AutoPostBack="true" SelectedValue='<%# Eval("Category") %>'> 
        <asp:ListItem Text="عمومی" Value="عمومی"></asp:ListItem> 
        <asp:ListItem Text="پزشکی" Value="پزشکی"></asp:ListItem> 
        <asp:ListItem Text="مددکاری" Value="مددکاری"></asp:ListItem> 
        <asp:ListItem Text="روان شناسی" Value="روان شناسی"></asp:ListItem> 
       </asp:DropDownList> 
       <asp:Label ID="CouncilIdLabel" runat="server" Text='<%# Eval("CouncilId") %>' Visible="false" /> 
      </td> 
     </tr> 

il est situé dans un listview ItemTemplate

s'il vous plaît aidez-moi, je dois résoudre ce problème très bientôt

Répondre

0

Oui, il est possible. Vous devrez trouver le contrôle dans la liste. Utilisation:

Label coucilIdLabel = (Label)MyListView.FindControl("CouncilIdLabel"); 
+0

alors comment accéder à la propriété text ?! – Mahdi

+0

Désolé, j'ai mis à jour le code un peu. – womp

+0

i ont essayé et obtenir cette erreur – Mahdi

1

Vous devez utiliser FindControl sur le ListViewDataItem lui-même. à savoir

Label coucilIdLabel = (Label)SomeListView.Items[SomeItemIndex].FindControl("CouncilIdLabel"); 

Ou - Dans votre cas changé selectedIndex, ce devrait travail:

var item = sender.Parent as ListViewDataItem; 
Label coucilIdLabel = (Label)item.FindControl("CouncilIdLabel"); 
+0

le didnt de l'expéditeur a le membre « parent » donc je l'ai utilisé cette DropDownList CategoryDropDown = (expéditeur DropDownList) « référence d'objet non définie à une instance d'un objet. »; var item = CategoryDropDown.Parent comme ListViewDataItem; Label coucilIdLabel = (Label) item.FindControl ("ConseilIdLabel"); et il m'a donné ceci: La référence d'objet n'est pas définie à une instance d'un objet. – Mahdi

+0

DropDownList CategoryDropDown = (expéditeur comme DropDownList); Élément de contrôle = CategoryDropDown.Parent.FindControl ("CouncilIdLabel"); Label coucilIdLabel2 = (Label) item.FindControl ("ConseilIdLabel"); Je pense que cela a résolu le problème :-) – Mahdi

Questions connexes