[英]add hyperlink to a gridview
我正在使用C#和asp.net创建一个网页,我有一个简单的sqlite数据库。 我有一个gridview,在这里我只显示简单的2本书类别。 这两个类别是小说技术
我想为这些类别分配一个链接,以便可以将用户定向到新页面。
这是在gridview中显示的数据的快照。我想在其中添加指向小说和技术的链接以重定向到新页面。 这是我的数据集和gridview。
DataSet dsgrid;
dsgrid = (DataSet)Cache["GridViewDataSet"];
if (dsgrid == null)
{
dsgrid = GetDataSet(); //call function
Cache["GridViewDataSet"] = dsgrid;
}
else
{
}
//bind our cache data to a datasource
GridView1.DataSource = dsgrid.Tables[0];
GridView1.DataBind();
}
catch (Exception ex)
{
this.lblError.Text = ex.Message;
}
}
private DataSet GetDataSet()
{
String connectionString = "Data Source=" + Server.MapPath(@"~\App_Data\bookDB.db");
String selectCommand = "Select * from Category";
SQLiteDataAdapter dataAdapter = new SQLiteDataAdapter(selectCommand, connectionString);
DataSet ds = new DataSet();
dataAdapter.Fill(ds);
//GridView1.DataSource = ds;
// GridView1.DataBind();
return ds;
}
谢谢
这里有一些选项,您选择哪种取决于您所需的灵活性。
内置按钮列:
<asp:GridView >
<Columns>
<asp:ButtonColumn DataField="some_field" Visible="false" ButtonType="linkButton" />
</Columns>
/<asp:GridView >
列模板:(这将为您提供最大的灵活性。)
<asp:GridView>
<Columns>
<asp:TemplateField HeaderText="Its a link!">
<ItemTemplate>
<asp:LinkButton ID="SomeName" runat="server" Text=''>
</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
请享用!
这是标记代码,您必须向IntemTempalte集合内的gridview控件添加超链接,并向包含的控件的text属性添加绑定表达式
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" Width="128px">
<Columns>
<asp:TemplateField HeaderText="Code">
<ItemTemplate>
<asp:Label ID="lblCodigo" runat="server" Text='<%#Eval("columnNae")%>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Name">
<ItemTemplate>
<asp:HyperLink ID="link" runat="server" Text='<%#Eval("columnNae") %>' NavigateUrl="http://nudierweb.somee.com"></asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
您需要使用HyperLinc控件
<asp:HyperLink id="hyperlink1" NavigateUrl="http://www.yournavigateurl.com"
Text="Your Hyperlink text" runat="server"/>
这样尝试
<asp:HyperLinkField DataTextField="Value of column you want to make as HYPERLINK" HeaderText="COLUMN NAME" runat="server" DataNavigateUrlFields="Value you want to pass to other page(fname)" DataNavigateUrlFormatString="~/demo.aspx(another page name)?fname**strong text**={0}"/>
例如:
<asp:HyperLinkField DataTextField="stid" HeaderText="stid" Target="_self" runat="server" DataNavigateUrlFields="fname" DataNavigateUrlFormatString="~/demo.aspx?fname={0}"/>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.