Как получить доступ к элементу управления в ListView после нажатия кнопки (ASP.NET c #)? - PullRequest
0 голосов
/ 26 ноября 2009

Мне нужно получить доступ к элементу управления меткой в ​​виде списка, когда я нажму кнопку (которая находится в той же строке) ...

Кто-нибудь знает, как это сделать, пожалуйста? (

См. Ниже для получения дополнительной информации ...

Страница ASPX:

<asp:ListView ID="ListView1" runat="server" DataSourceID="DataSource">
<LayoutTemplate>//Etc </LayoutTemplate>


<ItemTemplate>

<asp:Label ID="lblDone" runat="server" Visible="false">Your vote has been counted</asp:Label>

<asp:Button ID="voteButton" runat="server" Text="Vote" CommandArgument='<%#Eval("id") %>'
                        OnClick="voteOnThis" />

</ItemTemplate>

Код сзади:

protected void voteOnThis(object sender, EventArgs e)
{
    Button myButton = (Button)sender;
    Voting.vote(int.Parse(myButton.CommandArgument));
// Here i would like to access the 'label' lblDone and make this Visible 

}

Ответы [ 2 ]

2 голосов
/ 26 ноября 2009

Попробуй вот так.

Label lb = e.Item.FindControl("lblDone") as Label;    
b.Visible = false;    
lb.Text = "text goes here";
1 голос
/ 26 ноября 2009

@ код Саара должен работать, но вам может потребоваться изменить обработчик события для обработки события ItemCommand в ListView, а не событие Click кнопки:

<asp:ListView ID="ListView1" runat="server" DataSourceID="DataSource"
        OnItemCommand="ListView1_ItemCommand">
    <LayoutTemplate>//Etc </LayoutTemplate>
    <ItemTemplate>
        <asp:Label ID="lblDone" runat="server" Visible="false">Your vote has been counted</asp:Label>
        <asp:Button ID="voteButton" runat="server" Text="Vote" CommandArgument='<%#Eval("id") %>' />
    </ItemTemplate>
    ...
</asp:ListView>

Тогда ваш обработчик событий будет выглядеть примерно так:

protected void ListView1_ItemCommand(object sender, ListViewCommandEventArgs e) {
    // @Saar's code
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...