Cześć wszystkim.
GridView pozwala na utworzenie wirtualnej kolumny HyperLinkField, która konwertuje przypisaną jej inną kolumnę (a w niej wartości komórek) na hiperłącza, jednak do NavigateUrl trzeba przypisać "z góry" znany adres url. Jednak w GridView, komórki utworzonej przeze mnie kolumny "Odnośnik" generowane są każdorazowo po uruchomieniu funkcji tworzącej adres hiperłącza - jako adres relatywny typu ./(folder_o_innej_nazwie_w_zaleznosci_od_komorki)/index.aspx. Czy można zrobić tak, aby ta zawartość była "klikalnym" odsyłaczem do nowowygenerowanej podstrony?
0
0
Dodanie adresu url w RowDataBound?
0
@dlaFrajdy: Ok, ale jak to zrobić.
0
@Neosphoros: Piszę z pamięci bez IDE więc wybacz literówki:
aspx:
<asp:GridView ID="gvPreview" runat="server" OnRowDataBound="gvPreview_RowDataBound" >
<asp:TemplateField>
<ItemTemplate>
<asp:LinkButton id="lbtn1" runat="server"/>
</ItemTemplate>
</asp:TemplateField>
</asp:GridView>
code behind:
protected void gvPreview_RowDataBound(object sender, GridViewRowEventArgs e)
{
if(e.Row.RowType==DataControlRowType.DataRow)
{
LinkButton lbtn = e.Row.FindControl("lbtn1")
lbtn.PostBackURL = funkcjaGenerującaURL()
}
}