Repeater içindeki Hyperlink'in Click olayını nasıl tetiklerim?

e3e3e3 (15) 9 yıl önce sordu

Aşağıdaki gibi asp.net ile yazılmış bir kod blogum var. Repeater içindeki Hyperlink kontrolünün Click olayını kullanmak istiyorum.

Repeater içindeki Hyperlink'in Click olayını nasıl kullanırım?

 <asp:Repeater ID="Repeater2" runat="server">
        <ItemTemplate>
         <blockquote>           
            <p>
                
                <asp:Label ID="Label7" runat="server" Font-Italic="false" BackColor="#00ff00" ForeColor="#ffffff" ><%#Eval(" KullaniciAdi ") %></asp:Label>
                <asp:Label ID="Label4" runat="server" Font-Size="Large">  <%#Eval("YorumAcıklaması") %></asp:Label>

                <asp:Label ID="Label5" runat="server"  Font-Size="XX-Small"><%#Eval("YorumTarihi")%></asp:Label>              
                           <asp:HyperLink ID="HyperLink1" runat="server">HyperLink</asp:HyperLink>

            </p>        </blockquote>                                

            </ItemTemplate>       
    </asp:Repeater>

 

hakan 9 yıl önce

Sorularını sorarken daha fazla bilgi verirsen daha hızlı cevap alabilirsin. Soruları sorarken düz bir mantık ile sorabilirsin, Örneğin, Repeater içinde bir Hyperlink var ve ben tıklandığında şu,şu olsun istiyorum gibi. Aksi takdirde benim gibi okuyan pek çok kullanıcı tam olaran ne yapmak istediğini anlayamıyor. Ayrıca soru sorarken Editör ekranının en sağındaki <> simgesini tıklayarak kodonu yapıştırırsan daha güzel ve okunur görüntülenir.

Toplam 1 cevap


hakki (1) 9 yıl önce cevapladı

Sorunuz tam olarak açıklayıcı değil ama eğerki niyetiniz dosya indirme için dinamik link bağlamak ise aşağıdaki kodun eval bölümlerini kendinize göre uyarladığınızda zannedersem çözüm olabilir... 

<asp:LinkButton ID="lnkDosyaAdi" Text='<%# Eval("DosyaAdi") %>' CommandArgument='<%# Eval("DosyaAdi") %>' runat="server" OnClick="DownloadFile"></asp:LinkButton>

<asp:Button ID="btnDelete" OnClientClick="return DeleteOnayi()" CssClass="btn kucuk kirmizi" Text="Delete File" runat="server" CommandName="Delete" /><br />
                                                    <a href="<%# "../SpeciesFigures/"+Eval("DosyaAdi") %>" target="_blank">
<asp:Image ID="imageFaculty" ImageUrl='<%# "~/SpeciesFigures/"+Eval("DosyaAdi") %>' runat="server" CssClass="ResimBoyutlandir" /></a>

 

cs tarafına da aşağıdaki kodu ekleyeceksiniz;

protected void DownloadFile(object sender, EventArgs e)
        {
            string filePath = "~/SpeciesFigures/" + (sender as LinkButton).CommandArgument;
            Response.ContentType = ContentType;
            Response.AppendHeader("Content-Disposition", "attachment; filename=" + Path.GetFileName(filePath));
            Response.WriteFile(filePath);
            Response.End();
        }

Örnek kod burada biraz karmaşık duruyo ama .net tarafında daha anlaşılır olduğu kesin. 

Kolay Gelsin...