リピーターのLinkButton内にイメージを取得しようとしていて、イメージSrcを変更したいが、イメージUI側が変更されない。リピーターAsp.NetのLinkButton内のイメージソースを変更する方法C#
HTMLコード:
<asp:Repeater ID="Repeater" runat="server" OnItemCommand="Repeater_ItemCommand" >
<HeaderTemplate>
<table c>
<tr>
<th>
<asp:LinkButton ID="lbtnC1" CommandName="Col1" runat="server">Column1 <asp:Image id="imgStamp" ClientIDMode="AutoID" runat="server" style="vertical-align:middle;padding-left:3px" /></asp:LinkButton>
</thalign>
<th>
<asp:LinkButton ID="lbtnC2" runat="server"
CommandName="Col2">Column2 <asp:Image id="imgStamp" ClientIDMode="AutoID" runat="server" style="vertical-align:middle;padding-left:3px" /></asp:LinkButton></th>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>
<asp:Literal ID="C1Value" runat="server" />
</td>
<td>
<asp:Literal ID="C2Value" runat="server" />
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
C#のイベント
protected void Repeater_ItemCommand(object source, RepeaterCommandEventArgs e)
{
LinkButton linkButton = e.CommandSource as LinkButton;
HtmlImage image = linkButton.Controls[0] as HtmlImage;
if (e.CommandName == "Col1")
{
image.Src = Page.ResolveUrl("~/arrow-down-white.gif");
}
}
linkButton.Controlsには1つのアイテムしか含まれていないため、適用されません。私はイメージコントロールを見つけることができますが、イメージソースを変更した後、UI側でイメージが変化しません。 – Ravikumar
これは、[[1] 'を使用していて、' [0] 'では使用できません... – VDWWD
イメージコントロールはインデックスにあり、UIではイメージソースは変更できません。 – Ravikumar