Solved

Adding functionality to hyperlink on a DetailsView

Posted on 2008-10-14
7
554 Views
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!
0
Comment
Question by:jvalescu
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
7 Comments
 
LVL 17

Accepted Solution

by:
NicksonKoh earned 500 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

0
 

Author Comment

by:jvalescu
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)?
0
 
LVL 17

Expert Comment

by:NicksonKoh
ID: 22717410

Show me your C# code and I'll tell you how to put it in.
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 

Author Comment

by:jvalescu
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)
        {
            GridView1.DataBind();
            DetailsView1.Visible = false;
 
           
        }
    }
}

Open in new window

0
 

Author Comment

by:jvalescu
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" 
        onpageindexchanging="DetailsView1_PageIndexChanging" 
        onitemupdated="DetailsView1_ItemUpdated">
        <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" />
        <Fields>
            <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" />
        </Fields>
        <HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
        <EditRowStyle BackColor="#999999" />
        <AlternatingRowStyle BackColor="White" ForeColor="#284775" />
    </asp:DetailsView>

Open in new window

0
 
LVL 17

Expert Comment

by:NicksonKoh
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!
0
 

Author Comment

by:jvalescu
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

0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In this Article, I will provide a few tips in problem and solution manner. Opening an ASPX page in Visual studio 2003 is very slow. To make it fast, please do follow below steps:   Open the Solution/Project. Right click the ASPX file to b…
In an ASP.NET application, I faced some technical problems. In this article, I list them out and show the solutions that I found.  I hope it will be useful. Problem: After closing a pop-up window, the parent page should be refreshed automaticall…
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…
How to Install VMware Tools in Red Hat Enterprise Linux 6.4 (RHEL 6.4) Step-by-Step Tutorial

734 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