单击时如何从DataItemTemplate获取代码隐藏的URL?
例如:
<dx:GridViewDataTextColumn FieldName="Filename" HeaderStyle-HorizontalAlign="Center" CellStyle-HorizontalAlign="Center" Caption="File" ShowInCustomizationForm="True" VisibleIndex="3">
<DataItemTemplate>
<a runat="server" id="ref1" href=' ' target='_blank' oninit="OnLinkInit"></a>
</DataItemTemplate>
</dx:GridViewDataTextColumn>
代码背后
protected void OnLinkInit(object sender, EventArgs e)
{
HtmlAnchor anc = sender as HtmlAnchor;
GridViewDataItemTemplateContainer container = anc.NamingContainer as GridViewDataItemTemplateContainer;
anc.InnerText = container.Grid.GetRowValues(container.VisibleIndex, "Filename").ToString();
anc.Attributes["href"] = container.Grid.GetRowValues(container.VisibleIndex, "FilePath").ToString();
}
我想检查链接,如果链接是图像扩展名,然后在浏览器中显示图像,则文档扩展名会自动启动应用程序MS Word或MS Excel以打开文件。
我尝试过使用过OnServerClick,但它有效,但GridView中的数据会在回发后丢失。