aspnet-115495-components-card-view-examples-how-to-use-a-hyperlink-in-cardview-column-cells.md
Developers often need to include several field values in a hyperlink displayed in CardView column cells. We recommend that you use templates in this instance. The following example uses two similar approaches to show how this is implemented:
<dx:ASPxCardView ID="ASPxCardView1" DataSourceID="AccessDataSource2" KeyFieldName="CategoryID"
PreviewFieldName="Notes" AutoGenerateColumns="False" EnableCardsCache="False"
ClientInstanceName="cardview" runat="server" Width="1000px">
<SettingsPager>
<SettingsTableLayout ColumnCount="2" RowsPerPage="2" />
</SettingsPager>
<SettingsBehavior AllowFocusedCard="True" ConfirmDelete="True" />
<Columns>
<dx:CardViewTextColumn FieldName="CategoryID" ReadOnly="True" />
<dx:CardViewTextColumn FieldName="CategoryName" />
<dx:CardViewTextColumn FieldName="Description" />
<dx:CardViewTextColumn Caption="Simple Hyperlink Column" >
<DataItemTemplate>
<a id="clickElement" target="_blank" href="Default2.aspx?id=<%# Container.KeyValue%>"><%# "Show New Form, Key Field = " + Eval("CategoryID").ToString()% />
</DataItemTemplate>
</dx:CardViewTextColumn>
<dx:CardViewTextColumn Caption="Complex Hyperlink Column" >
<DataItemTemplate>
<a id="A1" target="_blank" href="Default2.aspx?id=<%# GetCardValue(Container)%>"><%# "Show New Form, CategoryName = " + Eval("CategoryName").ToString()% />
</DataItemTemplate>
</dx:CardViewTextColumn>
</Columns>
</dx:ASPxCardView>
<asp:AccessDataSource ID="AccessDataSource2" runat="server" DataFile="~/App_Data/nwind.mdb"
SelectCommand="SELECT * FROM [Categories]" />
<body>
<form id="form1" runat="server">
<div></div>
</form>
</body>
protected string GetCardValue(CardViewDataItemTemplateContainer container) {
return container.CardView.GetCardValuesByKeyValue(container.KeyValue, "CategoryName").ToString();
}
Protected Function GetCardValue(ByVal container As CardViewDataItemTemplateContainer) As String
Return container.CardView.GetCardValuesByKeyValue(container.KeyValue, "CategoryName").ToString()
End Function
protected void Page_Load(object sender, EventArgs e) {
if (!string.IsNullOrEmpty(Request.QueryString["id"]))
Response.Write("ID = " + Request.QueryString["id"]);
}
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
If Not String.IsNullOrEmpty(Request.QueryString("id")) Then
Response.Write("ID = " & Request.QueryString("id"))
End If
End Sub