Click to See Complete Forum and Search --> : Adding Hyper link Column in DataGrid Control


ali_ggl
03-11-2008, 03:22 AM
Hi!

I am using a DataGrid to show my table values. Some of the columns are showing
integer data. I need to show these IDs (Integer values) data as hyperlinks so that the
user can drill downward or get more details about the data. How to do this pleas if any one
knows gude me thanks a lot in advance.
:confused:
Ali.

asubash
03-12-2008, 07:29 AM
Hi,



<asp:TemplateColumn HeaderText="Column Name">
<HeaderStyle Width="100px"></HeaderStyle>
<ItemStyle></ItemStyle>
<ItemTemplate>
<asp:HyperLink id="HyperLink1" runat="server">
<%# databinder.eval(container.dataitem,"fieldname") %></asp:HyperLink>
</ItemTemplate>
</asp:TemplateColumn>

Bharati
03-13-2008, 05:04 AM
Hi,

The following code displays new jobs. if user clicks on the hyperlink, it will show the another page detaildisplay.aspx which displays the job details as shown below.

<script language="c#" runat="server">
public void page_load(object sender, System.EventArgs e)
{
if (!IsPostBack)
{
dgrdNewJobs.DataSource = GetNewJobs();
DataBind();
}
}
public void NewJobsPage(object sender, DataGridPageChangedEventArgs e)
{
dgrdNewJobs.CurrentPageIndex = e.NewPageIndex;
dgrdNewJobs.DataSource = GetNewJobs();
dgrdNewJobs.DataBind();
}

DataSet GetNewJobs()
{
string strConString;
SqlConnection conJobs;
SqlDataAdapter dadJobs;
DataSet dstJobs;

dstJobs = Cache["NewJobs"] as DataSet;
if (dstJobs == null)
{
// Ready Database Connection
strConString = "Data Source=2XX.XX.XX.XX;database=jobsabc;User ID=jobs123;Password=cd546dc;";
conJobs = new SqlConnection(strConString);
dstJobs = new DataSet();
// Get Newest 50 Jobs From Database
dadJobs = new SqlDataAdapter("getNewJobs", conJobs);
dadJobs.SelectCommand.CommandType = CommandType.StoredProcedure;
dadJobs.Fill(dstJobs, "NewJobs");
Cache["NewJobs"] = dstJobs;
}
return dstJobs;
}
</script>


<div align="left" style="padding-left:30px">
<b>Newest Jobs! Click for Details.</b> <br />
(Freshers, contact each company directly)
</div>
<br />
<div align="left" style="padding-left:30px">
<br />
<asp:DataGrid
ID="dgrdNewJobs"
AllowPaging="True"
OnPageIndexChanged="NewJobsPage"
PageSize="15"
PagerStyle-HorizontalAlign="left"
GridLines="None"
Cellspacing="4"
AutoGenerateColumns="False"
ShowHeader="False"
Runat="Server">
<Columns>
<asp:BoundColumn
DataField="job_entrydate"
DataFormatString="{0:m} : " />

<asp:HyperLinkColumn
DataTextField="job_briefdesc"
DataNavigateUrlField="job_id"
DataNavigateUrlFormatString="~/sitejob/detaildisplay.aspx?id={0}"/>

<asp:TemplateColumn HeaderText="FAQ Description">
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "job_area") %>
</ItemTemplate>
</asp:TemplateColumn>

</Columns>
</asp:DataGrid>
</p>
</div>