1
A
回答
1
您應該編輯DataList的項目模板並放入一個ASP HyperLink,並使用數據綁定將NavigateUrl分配給此類控件。
是這樣的:
<asp:DataList ID="listSearchResults" Border="1" BorderColor="Black"
RepeatDirect="Horizontal" RepeatColumns="5" runat="server" >
<ItemTemplate>
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("Url") %>' Text='<%# Eval("Name") %>' />
</ItemTemplate>
</asp:DataList>
另一種方法是使用ASP:LinkButton的和分配的CommandName和CommandArgument屬性對照。
0
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!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 runat="server">
<title>Datalist with linkable items</title>
</head>
<body>
<form id="form1" runat="server">
<div align="center">
<asp:DataList ID="dlLinkable" runat="server"
onitemdatabound="dlLinkable_ItemDataBound" >
<ItemTemplate>
<table style="width: 300px;" cellpadding="0" cellspacing="1">
<tr>
<td style="width:200px">
<asp:Label ID="lblName" runat="server" Text="Label"></asp:Label>
</td>
<td>
<a id="linkA" runat="server">link</a>
</td>
</tr>
</table>
</ItemTemplate>
</asp:DataList>
</div>
</form>
</body>
</html>
using System;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
public partial class _Default : System.Web.UI.Page
{
DataTable dt;
protected void Page_Load(object sender, EventArgs e)
{
populateDataList();
}
private void populateDataList()
{
dt = new DataTable();
//Create 3 columns for this DataTable
DataColumn col1 = new DataColumn("ID");
DataColumn col2 = new DataColumn("Name");
DataColumn col3 = new DataColumn("Url");
//Add All These Columns into DataTable table
dt.Columns.Add(col1);
dt.Columns.Add(col2);
dt.Columns.Add(col3);
// Create a Row in the DataTable table
DataRow row = dt.NewRow();
row[col1] = 1;
row[col2] = "google";
row[col3] = "http://www.google.com";
dt.Rows.Add(row);
//////////////////////
row = dt.NewRow();
row[col1] = 2;
row[col2] = "yahoo";
row[col3] = "http://www.yahoo.com";
dt.Rows.Add(row);
//////////////////////////////////
dlLinkable.DataSource = dt;
dlLinkable.DataBind();
}
protected void dlLinkable_ItemDataBound(object sender, DataListItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item)
{
Label lblName = (Label)e.Item.FindControl("lblName");
if (lblName != null)
{
lblName.Text = dt.Rows[e.Item.ItemIndex]["Name"].ToString();
}
HtmlAnchor linkA = (HtmlAnchor)e.Item.FindControl("linkA");
if (linkA != null)
{
linkA.HRef = dt.Rows[e.Item.ItemIndex]["Url"].ToString();
}
}
}
}
相關問題
- 1. 單個項目的ASP.NET DataList
- 2. 修復Datalist ASP.net中的項目數量
- 3. Asp.Net在Datalist中
- 4. Datalist ASP.NET中的Gridview
- 5. asp.net中DataLIst的ItemIndex
- 6. 無法顯示C#中的datalist項目
- 7. 獲取DataList中所選項目的值
- 8. url在asp.net中重寫datalist
- 9. 如何訪問DataList中的會話/變量值在Asp.net中綁定項目?
- 10. 使用datalist項目拖放:
- 11. 訪問Datalist中的asp.net
- 12. asp.net中的Datalist分頁?
- 13. Datalist中的ASP.NET CustomValidator OnServerValidate?
- 14. 的jQuery在asp.net DataList控件
- 15. ASP.NET MVC的Datalist RepeatColumns
- 16. ASP.NET datalist問題
- 17. ASP.Net DataList問題
- 18. asp.net + DataList控件
- 19. 在asp.net中啓用對DataList的選擇
- 20. 無法讓jquery datepicker在我的asp.net mvc項目中工作
- 21. 通過Javascript獲取在datalist中點擊的項目的價值
- 22. Asp.Net:從Datalist中檢索行數據,使用Datalist中的buttoncontrol
- 23. 在DataList的最後一個位置添加一個默認項目 - ASP.NET
- 24. ASP.Net MVC ListBoxFor - 讓用戶添加項目
- 25. 在ASP.NET項目
- 26. 在ASP.NET項目
- 27. ASP.NET:在datalist中調整圖像大小?
- 28. 如何在asp.net c#中使用datalist?
- 29. Datalist在ASP.NET中控制訪問權限
- 30. 在datalist中顯示圖像ASP.NET
那麼你嘗試過什麼和在哪裏,你有具體的問題?你至少有Google搜索嗎? http://msdn.microsoft.com/en-us/library/h59db326.aspx#Y3642(第一擊) –
發佈您的代碼。它幫助其他人回答您的查詢 –
我試過超鏈接,但導航網址是常量,我無法生成事件處理程序點擊 – kartal