Solved

"Open in New Tab" doesn't work for my GridView/DataView controls

Posted on 2009-05-12
11
635 Views
Last Modified: 2012-05-06
When I right-click a CommandField link in a GridView/DataView control on my ASP.NET page the "Open in New Tab" doesn't work. I stay in the same browser window.
0
Comment
Question by:GordJones
11 Comments
 
LVL 13

Expert Comment

by:drypz
ID: 24371224
Hi! Create an item template for your gridview and add an Hyperlink control. Something like...
.aspx page
 
    <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
        onrowdatabound="GridView1_RowDataBound">
        <Columns>
            <asp:TemplateField HeaderText="Link">
                <ItemTemplate>
                    <asp:HyperLink ID="HyperLink1" runat="server" />
                </ItemTemplate>
            </asp:TemplateField>
        </Columns>
    </asp:GridView>
 
.cs file
 
    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
 
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            
            HyperLink hl = (HyperLink) e.Row.FindControl("HyperLink1");
            hl.Text = e.Row.Cells[0].Text; //you can set your hyperlink text here
            hl.NavigateUrl = "http://www.yahoo.com"; //destination page when hyperlink is clicked
        }
    }

Open in new window

0
 

Author Comment

by:GordJones
ID: 24375697
I guess I was looking for a reason/explaination as to why the default CommandField link option doesn't operate as expected and how to make it act as expected.
0
 
LVL 142

Expert Comment

by:Guy Hengel [angelIII / a3]
ID: 24433336
from what I know, the "open in new tab" behaviour cannot be controlled from the server, only in the client's browser settings...
please double-check those settings.
0
Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

 

Author Comment

by:GordJones
ID: 24433904
My Internet Expoler settings are set for Tabbed Browsing and to open new links in new tabs. Tried some other settings, no different. Any other ideas out there?
0
 

Author Comment

by:GordJones
ID: 24434413
My code in the gridview is:
    Protected Sub GridView1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles GridView1.SelectedIndexChanged
 
        Response.Redirect("DETAIL.ASPX?AssetID=" & GridView1.SelectedValue.ToString)
    End Sub

Open in new window

0
 
LVL 51

Expert Comment

by:HainKurt
ID: 24454389
can you please submit the related html code from the browser here or give us a working URL, so we can check the page and give you some suggestions... can you use "open in a new tab" for other pages?
0
 

Author Comment

by:GordJones
ID: 24454896
Yes I can "Open in a new tab" for links that are not in the Gridview.
The page is on an Intranet.
The code I posted previously was from the aspx.vb. I will post the gridview code from the aspx file (the link is the first column "Details")

    <asp:GridView ID="GridView1" runat="server" AllowPaging="True" 
        AllowSorting="True" AutoGenerateColumns="False" 
        DataSourceID="odsGridDS" 
        PageSize="15" Width="100%" DataKeyNames="ASSETID" EmptyDataText="No records found!">
        <Columns>
            <asp:CommandField SelectText="Details" ShowSelectButton="True" />
            <asp:BoundField DataField="ASSETID" HeaderText="ASSETID" 
                SortExpression="ASSETID" InsertVisible="False" ReadOnly="True" 
                Visible="False" />
            <asp:BoundField DataField="ISCHILD" HeaderText="IS CHILD" 
                SortExpression="IsChild" ReadOnly="True" InsertVisible="False" >
            <ItemStyle HorizontalAlign="Center" />
            </asp:BoundField>
            <asp:BoundField DataField="DESCRIPTION" HeaderText="DESCRIPTION" 
                SortExpression="DESCRIPTION" />
            <asp:BoundField DataField="IDENTIFICATIONNO" HeaderText="V.I.N." 
                SortExpression="IDENTIFICATIONNO" />
            <asp:BoundField DataField="LOCATION" HeaderText="LOCATION" 
                SortExpression="LOCATION" />
            <asp:BoundField DataField="INVOICENO" HeaderText="INVOICE #" 
                SortExpression="INVOICENO" />
            <asp:BoundField DataField="VENDORNAME" HeaderText="VENDOR NAME" 
                SortExpression="VENDORNAME" />
            <asp:BoundField DataField="EQUIPNO" HeaderText="EQUIP #" 
                SortExpression="EQUIPNO" />
            <asp:BoundField DataField="MODELNO" HeaderText="MODEL #" 
                SortExpression="MODELNO" />

Open in new window

0
 
LVL 51

Accepted Solution

by:
HainKurt earned 500 total points
ID: 24468640
probably you cannot use "Right Click - Open in New tab" feature, since it is not a link, but a command (think it as a button, you cannot right click on a button and open in new tab).
But If you really need to open in a new window, you may use target property (set it to "_blank")
0
 

Author Closing Comment

by:GordJones
ID: 31580674
This was the answer I was looking for "Can not use it because it is a button, not a link".
0

Featured Post

DevOps Toolchain Recommendations

Read this Gartner Research Note and discover how your IT organization can automate and optimize DevOps processes using a toolchain architecture.

Question has a verified solution.

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

Suggested Solutions

Introduction This article shows how to use the open source plupload control to upload multiple images. The images are resized on the client side before uploading and the upload is done in chunks. Background I had to provide a way for user…
International Data Corporation (IDC) prognosticates that before the current the year gets over disbursing on IT framework products to be sent in cloud environs will be $37.1B.
This Micro Tutorial will teach you how to censor certain areas of your screen. The example in this video will show a little boy's face being blurred. This will be demonstrated using Adobe Premiere Pro CS6.
A short tutorial showing how to set up an email signature in Outlook on the Web (previously known as OWA). For free email signatures designs, visit https://www.mail-signatures.com/articles/signature-templates/?sts=6651 If you want to manage em…

785 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