Take the 2-minute tour ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

I have one sharepoint custom page application which is rendering from a user control. In the user control page, i had used SPGridview for displaying data. My first column is Title Column (link button column), when the user click on the link, then one popup window will open with corresponding data. But the problem is the link button is not working properly. But this application is working as fine in asp.net application.

My code is shown below..

<asp:UpdatePanel runat="server" ID="UpdatePanel2">
    <ContentTemplate>
        <SharePoint:SPGridView ID="dgApplicationBox" CellPadding="0" Height="100%" runat="server" ForeColor="Black" Font-Size="10px" Font-Names="Verdana" AutoGenerateColumns="False" AllowPaging="True" Width="100%" BorderStyle="None" BorderWidth="0px" PageSize="10" BorderColor="White" BackColor="White" OnRowDataBound="dgApplicationBox_RowDataBound" DataKeyNames="ApplicationID" OnSelectedIndexChanged="dgApplicationBox_SelectedIndexChanged" OnPageIndexChanging="dgApplicationBox_PageIndexChanging" CssClass="ms-listviewtable"  AlternatingRowStyle-CssClass="ms-alternating">
        <SelectedRowStyle Font-Bold="True" ForeColor="Black" BackColor="#CE5D5A"></SelectedRowStyle>
        <EditRowStyle Font-Size="10px" Font-Names="Verdana,Arial,Helvetica,sans-serif"></EditRowStyle>
        <HeaderStyle Font-Size="11px" Height="20px" Font-Bold="True" ForeColor="Black" BackColor="#E7E8EC">
        </HeaderStyle>
        <PagerStyle HorizontalAlign="Center" ForeColor="#414E61" Font-Size="5px" Font-Names="arial" Height="10px" BackColor="#EBF3FF"></PagerStyle>
        <RowStyle />
        <Columns>
            <asp:TemplateField HeaderText="Title" HeaderStyle-CssClass="ms-vb">
                <ItemTemplate>
                    <asp:LinkButton ID="lbtnSubject" Text='<%# Bind("UDF5") %>' runat="server" OnClick="lbtnSubject_Click"></asp:LinkButton>
                </ItemTemplate>
                <HeaderStyle HorizontalAlign="Left" CssClass="ms-vh2" Font-Bold="true" />
                <ItemStyle HorizontalAlign="Left" CssClass="ms-vb2" />
            </asp:TemplateField>
            <asp:TemplateField HeaderText="Request No.">
                <ItemTemplate>
                    <asp:Label ID="lblReqNo" Text='<%# Bind("UDF1") %>' runat="server" />
                </ItemTemplate>
                <HeaderStyle HorizontalAlign="Left" CssClass="ms-vh2" Font-Bold="true" />
                    <ItemStyle HorizontalAlign="Left" CssClass="ms-vb2" />
            </asp:TemplateField>
            <asp:BoundField DataField="CreatedOn" HeaderText="Created On" DataFormatString="{0:MM/dd/yyyy}" HeaderStyle-HorizontalAlign="Left" ItemStyle-HorizontalAlign="Left">
                <HeaderStyle CssClass="ms-vh2" Font-Bold="true"></HeaderStyle>
                    <ItemStyle CssClass="ms-vb2"></ItemStyle>
            </asp:BoundField>
            <asp:BoundField DataField="Name" HeaderText="Form Type" HeaderStyle-HorizontalAlign="Left" ItemStyle-HorizontalAlign="Left">
                <HeaderStyle CssClass="ms-vh2" Font-Bold="true"></HeaderStyle>
                <ItemStyle CssClass="ms-vb2"></ItemStyle>
            </asp:BoundField>
            <asp:TemplateField HeaderText="History">
                <HeaderStyle CssClass="ms-vh2" Font-Bold="true"></HeaderStyle>
                <ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" Width="21px" CssClass="ms-vb2">
                </ItemStyle>
                <ItemTemplate>
                    <asp:LinkButton ID="lbtnView" runat="server" OnClick="lbtnView_Click" >View</asp:LinkButton>
                </ItemTemplate>
            </asp:TemplateField>
            <asp:TemplateField HeaderText="Application Id" Visible="False">
                <ItemTemplate>
                    <asp:Label ID="lblApplicationId" runat="server" Text='<%# Bind("ApplicationId") %>'></asp:Label>
                </ItemTemplate>
                <HeaderStyle HorizontalAlign="Left" CssClass="ms-vh2" Font-Bold="true" />
                <ItemStyle HorizontalAlign="Left" CssClass="ms-vb2" />
            </asp:TemplateField>
        </Columns>
    </SharePoint:SPGridView>
</ContentTemplate>

when the user click on the link button, this code will works..

try
{
    clearSession();
    Session["DigitalSignature"] = null;
    Button btnDetails = sender as Button;
    DataTable dt = (DataTable)dgApplicationBox.DataSource;
    GridViewRow gvRow = (GridViewRow)(sender as LinkButton).Parent.Parent;
    Session["AppId"] = ((Label)gvRow.FindControl("lblApplicationId")).Text;
    string subject = ((LinkButton)gvRow.FindControl("lbtnSubject")).Text;


    WFInfo objWFInfo = new WFInfo();
    objWFInfo.InitWorkflowProperty(Convert.ToInt32(Session["AppId"].ToString()), Session["CurrentUser"].ToString());
    Session["FormId"] = objWFInfo.FormID.ToString();

    string strFilname = objWFInfo.GetFormName(objWFInfo.ApplicationCategoryID.ToString());
    string WindowName = strFilname;
    strFilname += ".aspx";
    Session["CategoryId"] = objWFInfo.ApplicationCategoryID.ToString();
    //pnlSubmitModal_ModalPopupExtender.Show();

    ScriptManager.RegisterStartupScript(this, this.GetType(), "starScript", "popUpWindow('" + strFilname + "?tittle=" + subject + "', 800, 690,'" + WindowName + "');", true);

    this.Controls.Add(new LiteralControl("<script>alert('hi');</script>"));

    if (Session["CurrentUser"] != null)
    {
        ApplicationForm objApplication = new ApplicationForm();
        objApplication.markRead(Convert.ToInt32(Session["AppId"].ToString()), Session["CurrentUser"].ToString());

    }
    bindFolderData();
}

If i click on the link button, there will be only post back occuring. but not the popup window open.. Please help me for resolving this problem. thanks in advance..

share|improve this question
add comment

2 Answers 2

This may be a case where your event handler for the link button click event is throwing an exception before it gets to the point where it registers your script for popping up the modal dialog (It looks like the code is wrapped in a try/catch)

Have you stepped through your code using the visual studio debugger to try to work out what is happening?

share|improve this answer
add comment

you can try this link http://www.directsharepoint.com/2011/02/creating-link-column-in-spgridview.html

share|improve this answer
    
While this link may answer the question, it is better to include the essential parts of the answer here and provide the link for reference. Link-only answers can become invalid if the linked page changes. –  Stuart Pegg Aug 16 '12 at 17:06
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.