HyperLinkColumn.DataNavigateUrlField 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得或設定資料來源的欄位,以繫結至 HyperLinkColumn 內超連結的 URL。
public:
virtual property System::String ^ DataNavigateUrlField { System::String ^ get(); void set(System::String ^ value); };
public virtual string DataNavigateUrlField { get; set; }
member this.DataNavigateUrlField : string with get, set
Public Overridable Property DataNavigateUrlField As String
屬性值
資料來源的欄位,要繫結至 HyperLinkColumn 內超連結的 URL。
範例
下列範例示範如何使用 DataNavigateUrlField 屬性來指定數據源中的欄位,以系結至 中 HyperLinkColumn超連結的 URL。
注意
下列程式代碼範例會使用單一檔案程式代碼模型,如果直接複製到程式代碼後置檔案,可能無法正常運作。 此程式代碼範例必須複製到具有.aspx擴展名的空白文本檔。 如需 Web Forms 程式代碼模型的詳細資訊,請參閱 ASP.NET Web Forms 頁面代碼模型。
<%@ Page Language="C#" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>HyperLinkColumn Example</title>
<script runat="server">
ICollection CreateDataSource()
{
DataTable dt = new DataTable();
DataRow dr;
dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
dt.Columns.Add(new DataColumn("PriceValue", typeof(Double)));
for (int i = 0; i < 3; i++)
{
dr = dt.NewRow();
dr[0] = i;
dr[1] = (Double)i * 1.23;
dt.Rows.Add(dr);
}
DataView dv = new DataView(dt);
return dv;
}
void Page_Load(Object sender, EventArgs e)
{
MyDataGrid.DataSource = CreateDataSource();
MyDataGrid.DataBind();
}
</script>
</head>
<body>
<form id="form1" runat="server">
<h3>HyperLinkColumn Example</h3>
<asp:DataGrid id="MyDataGrid"
BorderColor="black"
BorderWidth="1"
GridLines="Both"
AutoGenerateColumns="false"
runat="server">
<HeaderStyle BackColor="#aaaadd"/>
<Columns>
<asp:HyperLinkColumn
HeaderText="Select an Item"
DataNavigateUrlField="IntegerValue"
DataNavigateUrlFormatString="detailspage.aspx?id={0}"
DataTextField="PriceValue"
DataTextFormatString="{0:c}"
Target="_blank"/>
</Columns>
</asp:DataGrid>
</form>
</body>
</html>
<%@ Page Language="VB" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>HyperLinkColumn Example</title>
<script runat="server">
Function CreateDataSource() As ICollection
Dim dt As DataTable = New DataTable()
Dim dr As DataRow
Dim i As Integer
dt.Columns.Add(New DataColumn("IntegerValue", GetType(Int32)))
dt.Columns.Add(New DataColumn("PriceValue", GetType(Double)))
For i = 0 to 2
dr = dt.NewRow()
dr(0) = i
dr(1) = CDbl(i) * 1.23
dt.Rows.Add(dr)
Next i
Dim dv As DataView = New DataView(dt)
Return dv
End Function
Sub Page_Load(sender As Object, e As EventArgs)
MyDataGrid.DataSource = CreateDataSource()
MyDataGrid.DataBind()
End Sub
</script>
</head>
<body>
<form id="form1" runat="server">
<h3>HyperLinkColumn Example</h3>
<asp:DataGrid id="MyDataGrid"
BorderColor="black"
BorderWidth="1"
GridLines="Both"
AutoGenerateColumns="false"
runat="server">
<HeaderStyle BackColor="#aaaadd"/>
<Columns>
<asp:HyperLinkColumn
HeaderText="Select an Item"
DataNavigateUrlField="IntegerValue"
DataNavigateUrlFormatString="detailspage.aspx?id={0}"
DataTextField="PriceValue"
DataTextFormatString="{0:c}"
Target="_blank"/>
</Columns>
</asp:DataGrid>
</form>
</body>
</html>
下列對應的範例會顯示在上一個範例中選取的專案。
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Details page for DataGrid</title>
<script runat="server">
void Page_Load(Object sender, EventArgs e)
{
Label1.Text = "You selected item: " + Request.QueryString["id"];
}
</script>
</head>
<body>
<h3>Details page for DataGrid</h3>
<asp:Label id="Label1"
runat="server"/>
</body>
</html>
<%@ Page Language="VB" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Details page for DataGrid</title>
<script runat="server">
Sub Page_Load(sender As Object, e As EventArgs)
Label1.Text = "You selected item: " & Request.QueryString("id")
End Sub
</script>
</head>
<body>
<h3>Details page for DataGrid</h3>
<asp:Label id="Label1"
runat="server"/>
</body>
</html>
備註
DataNavigateUrlField使用 屬性來指定數據源中的欄位,以系結至 中HyperLinkColumn超連結的 URL。 當 URL 系結至欄位的數據時,數據行中每個超連結的 URL 都會以指定欄位中的對應值來設定。 這可讓您為數據行中的每個超連結設定不同的URL。 若要為數據列中的每個數據列指定相同的 URL,請設定 NavigateUrl 屬性,而不是此屬性。
注意
DataNavigateUrlField和 NavigateUrl 屬性不能同時設定。 如果同時設定這兩個屬性,則 DataNavigateUrlField 屬性會優先使用。
當您使用資料系結時,您可以藉由設定 DataNavigateUrlFormatString 屬性來指定超連結 URL 的自定義顯示格式。