Adding functionality to hyperlink on a DetailsView

Posted on 2008-10-14
Medium Priority
Last Modified: 2012-05-05
Hi all,

   I have a DetailView control on my page and have added a hyperlink that goes to another page.  Clicking on the link opens the other page fine, but I'd like to carry over information from the DetailView to the new page.  Not sure how to insert this code.  I was going to stuff the data into Session variables before the new page opened and then populate the new page with the Session data.  How do I do this?  Or is there a better way?  Thanks!
Question by:jvalescu
  • 4
  • 3
LVL 17

Accepted Solution

NicksonKoh earned 1500 total points
ID: 22717360
Hi there,

Session isn't a good way in this case. You can sent via query string.

    Dim strURL As String = "test.aspx"
    Dim arrParam(1) As String
    Dim strID, strName As String
    strID = "00123"
    strName = "Tester"
    arrParam(0) = "id=" & strID
    arrParam(1) = "name=" & strName
    strURL &= "?" & String.Join("&", arrParam)  'Just put strURl as the link

Open in new window


Author Comment

ID: 22717401
But where exactly do I put this code in the .cs file (I know your example is in VB, but I can translate it)?
LVL 17

Expert Comment

ID: 22717410

Show me your C# code and I'll tell you how to put it in.
The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.


Author Comment

ID: 22717461
Here is the code behind.
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Xml.Linq;
namespace IB
    public partial class SearchOrders : System.Web.UI.Page
        protected void Page_Load(object sender, EventArgs e)
            DetailsView1.Visible = false;
        protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
            DetailsView1.Visible = true;
            DetailsView1.PageIndex = GridView1.SelectedIndex;
        protected void FormView1_PageIndexChanging(object sender, FormViewPageEventArgs e)
        protected void DetailsView1_PageIndexChanging(object sender, DetailsViewPageEventArgs e)
        protected void GridView1_RowUpdated(object sender, GridViewUpdatedEventArgs e)
          //  GridView1.DataBind();
        protected void DetailsView1_ItemUpdated(object sender, DetailsViewUpdatedEventArgs e)
            DetailsView1.Visible = false;

Open in new window


Author Comment

ID: 22717517
Not sure if you needed this to.
<asp:DetailsView ID="DetailsView1" runat="server" AutoGenerateRows="False"  
        CellPadding="4" DataSourceID="DetailsDataSource2" ForeColor="#333333" 
        GridLines="None" Height="50px" 
        style="z-index: 1; left: 1112px; top: 194px; position: absolute; height: 67px; width: 125px" 
        Width="125px" Caption="Edit Order" DataKeyNames="Control" 
        DefaultMode="Edit" Font-Size="Small" 
        <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
        <CommandRowStyle BackColor="#E2DED6" Font-Bold="True" />
        <RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
        <FieldHeaderStyle BackColor="#E9ECF1" Font-Bold="True" />
        <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
            <asp:CommandField ShowEditButton="True" />
            <asp:HyperLinkField NavigateUrl="~/Allocation.aspx" Text="Allocate" />
            <asp:BoundField DataField="LineNumber" HeaderText="LineNumber" 
                SortExpression="LineNumber" ReadOnly="True" />
            <asp:BoundField DataField="RodSize" HeaderText="RodSize" 
                SortExpression="RodSize" />
            <asp:BoundField DataField="FinishedSize" HeaderText="FinishedSize" 
                SortExpression="FinishedSize" />
            <asp:BoundField DataField="Grade" HeaderText="Grade" 
                SortExpression="Grade" />
            <asp:BoundField DataField="Description" HeaderText="Description" 
                SortExpression="Description" />
            <asp:BoundField DataField="OrderQuantity" HeaderText="OrderQuantity" 
                SortExpression="OrderQuantity" />
            <asp:BoundField DataField="NoOfCoils" HeaderText="NoOfCoils" 
                SortExpression="NoOfCoils" />
            <asp:BoundField DataField="DueDate" HeaderText="DueDate" 
                SortExpression="DueDate" DataFormatString="{0:MMM-dd-yyyy}" 
                HtmlEncode="False" />
            <asp:BoundField DataField="PartNumber" HeaderText="PartNumber" 
                SortExpression="PartNumber" />
            <asp:BoundField DataField="PricePerCWT" HeaderText="PricePerCWT" 
                SortExpression="PricePerCWT" />
            <asp:BoundField DataField="Notes" HeaderText="Notes" 
                SortExpression="Notes" />
            <asp:BoundField DataField="Status" HeaderText="Status" 
                SortExpression="Status" />
            <asp:BoundField DataField="SecondaryRodSize" HeaderText="SecondaryRodSize" 
                SortExpression="SecondaryRodSize" />
            <asp:BoundField DataField="PrimaryDiameter" HeaderText="PrimaryDiameter" 
                SortExpression="PrimaryDiameter" />
            <asp:BoundField DataField="SecondaryDiameter" HeaderText="SecondaryDiameter" 
                SortExpression="SecondaryDiameter" />
            <asp:BoundField DataField="ShipDate" HeaderText="ShipDate" 
                SortExpression="ShipDate" DataFormatString="{0:MMM-dd-yyyy}" 
                HtmlEncode="False" />
            <asp:BoundField DataField="Process" HeaderText="Process" 
                SortExpression="Process" />
            <asp:BoundField DataField="PromisedDate" HeaderText="PromisedDate" 
                SortExpression="PromisedDate" DataFormatString="{0:MMM-dd-yyyy}" 
                HtmlEncode="False" />
            <asp:BoundField DataField="Control" HeaderText="Control" 
                SortExpression="Control" Visible="False" />
        <HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
        <EditRowStyle BackColor="#999999" />
        <AlternatingRowStyle BackColor="White" ForeColor="#284775" />

Open in new window

LVL 17

Expert Comment

ID: 22717616
Shruks, I just tried for a while and I am lost too as to how to edit the contents of a DetailView control! You need another expert.

For me, I personally just like to use only those simple HTML control and asked my development team to do likewise. They are much simpler to understand and control than those Datagrid, DetailView, etc!

Author Comment

ID: 22717834
I was messing with the _ItemCommand event and it fires if I hit the UPDATE or CANCEL buttons, but not on the Hyperlink fieldtype.  I saw the definition of the event as "Fires when any clickable element on the control is clicked. "   Anyone have any ideas?

protected void DetailsView1_ItemCommand(object sender, DetailsViewCommandEventArgs e)
            int i = 0;

Open in new window


Featured Post

Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

One of the pain points with developing AJAX, JavaScript, JQuery, and other client-side behaviors is that JavaScript doesn’t allow for cross domain request for pulling content. For example, JavaScript code on www.johnchapman.name could not pull conte…
Problem Hi all,    While many today have fast Internet connection, there are many still who do not, or are connecting through devices with a slower connect, so light web pages and fast load times are still popular.    If your ASP.NET page …
The video will let you know the exact process to import OST/PST files to the cloud based Office 365 mailboxes. Using Kernel Import PST to Office 365 tool, one can quickly import numerous OST/PST files to Office 365. Besides this, the tool also comes…
If you are looking for an automated tool which can generate reports for Outlook emails and other items from PST file, then you can go for Kernel PST Reporter tool. The reports which are created by this tool are helpful to analyze and understand PST …

600 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question