Products

Solutions

Resources

Partners

Community

Blog

About

QA

Ideas Test

New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

Welcome to the DNN Community Forums, your preferred source of online community support for all things related to DNN.
In order to participate you must be a registered DNNizen

HomeHomeGetting StartedGetting StartedNew to DNN Plat...New to DNN Plat...NavigateURL for Datagrid item for detail pageNavigateURL for Datagrid item for detail page
Previous
 
Next
New Post
5/27/2011 3:00 PM
 
Hi
Am developing a News Module which contains View.ascx and Detail.ascx pages
in view.ascx page am using datagrid and showing title, image, shortdescription of a news and in detail.ascx page i want to show detail description of a perticular news after user click on Title in view.ascx page.
my problem is how can i give a link to the title with Dotnetnuke.Common.Globals.NavigateURL(Tabid,"","mid="+this.ModuleID,"NewsID="+NewsID)
any suggestion please tell me
 
New Post
5/27/2011 6:56 PM
 
One way of working is to handle the View and Details in the same module.

Create two Panel areas
- place the View elements in the top panel - which u mark as visible by default
- place the Detail elements in the bottom panel - which u mark as not visible by default.

use something like Globals.NavigateURL(PortalSettings.ActiveTab.TabID, "", "NewsID="+NewsID )  in you detail click

then do a test for the NewsID parameter in you Page Load - and display View Panel if there is no valid NewsID or display Detail Panel if there is a NewsID.

The second option - still using a single module would be dynamically load the View.ascx or Details.ascx again depending on the value set by NewsID.

Westa

 
New Post
5/28/2011 2:47 AM
 
hi westa,
Thanks for your reply 
am using two panels only. but this is not my problem. my problem is as you know am using datagrid to show the data my code is below for ascx page.
-----------------------------------------------------------------------------------
<asp:DataGrid ID="Grid" runat="server" PageSize="1" DataKeyField="NewsId" AllowPaging="true"
                                                PagerStyle-Mode="NumericPages" GridLines="None" AutoGenerateColumns="False" BorderWidth="0"
                                                CellPadding="0" CellSpacing="0" ShowHeader="False" OnItemCreated="Grid_ItemCreated" PagerStyle-HorizontalAlign="center" OnPageIndexChanged="Grid_PageIndexChanged" >
                                                <Columns>
                                                    <asp:TemplateColumn>
                                                        <ItemTemplate>
                                                            <table width="700" border="0" cellspacing="0" cellpadding="0">
                                                                <tr>
                                                                    <td>
                                                                        <table width="700" border="0" cellspacing="0" cellpadding="0">
                                                                            <tr>
                                                                                <td width="138" rowspan="4">
                                                                                 
                                                                                   <img id="img" alt="" runat="server" src='<%# String.Format("{0}{1}",ImageURL, DataBinder.Eval(Container.DataItem,"Image")) %> ' width="180" height="100"  border="0" />
                                                                                                                                                                   
                                                                                   
                                                                                </td>
                                                                                <td width="8" rowspan="4">
                                                                                    &nbsp;
                                                                                </td>
                                                                                <td width="546">
                                                                                    <span class="sub_news"><a  id="link" href='<%# DataBinder.Eval(Container.DataItem,"NewsID")%> '>
                                                                                     
                                                                                            <%#DataBinder.Eval(Container.DataItem, "title")%>
                                                                                        </a></span>
                                                                                </td>
                                                                            </tr>
                                                                            <tr>
                                                                                <td>
                                                                                    <div align="left">
                                                                                        <span class="date_news">
                                                                                           <%#DataBinder.Eval(Container.DataItem, "EntryDate")%>
                                                                                        </span>
                                                                                    </div>
                                                                                </td>
                                                                            </tr>
                                                                            <tr>
                                                                                <td>
                                                                                    <div align="right" class="news_details">
                                                                                        <%#DataBinder.Eval(Container.DataItem, "shortdescription")%>
                                                                                    </div>
                                                                                </td>
                                                                            </tr>
                                                                            <tr>
                                                                                <td>
                                                                                    <div align="left">
                                                                                        <a href='<%#"newsdetail.aspx?id=" + DataBinder.Eval(Container.DataItem, "NewsID") %>'>
                                                                                            <span class="new_link_detials">التفاصيل </span></a>
                                                                                    </div>
                                                                                </td>
                                                                            </tr>
                                                                        </table>
                                                                    </td>
                                                                </tr>
                                                                <tr>
                                                                </tr>
                                                                <tr>
                                                                    <td height="20" valign="middle">
                                                                        <div class="line_border">
                                                                        </div>
                                                                    </td>
                                                                </tr>
                                                            </table>
                                                        </ItemTemplate>
                                                    </asp:TemplateColumn>
                                                </Columns>
                                            </asp:DataGrid>
----------------------------------------------------------
my problem is how can i give friendly URL in ancher tag which should become like Global.NavigateURL(Tabid,"","mid="+this.ModuleID,"NewsID="+DataBinder.Eval(Container.DataItem,"NewsID")). how can i bind this link in datagrid to get the link for detail page
 
New Post
5/28/2011 6:36 AM
 
Ah OK - declare a function like this in your module:

Function MakeURL(input as String) as String
	Return  Global.NavigateURL(Tabid,"","NewsID="+ input )

End Function

Then change the link in your datagrid markup to something like this:

<a  id="link" href='<%# MakeURL(DataBinder.Eval(Container.DataItem,"NewsID"))) %>' >

The output of the DataBinder,Eval will be passed as a string to the MakeURL() function for each row.

Westa
 
New Post
5/28/2011 4:48 PM
 
hi wasta

Thanks for your reply. now the link is working perfectly as i want.
but can you tell me why other modules are not viewing when i get into the detail page
for example in the page i have two module one is news another is html module in news module am showing news List when i click on the title it showing me detail page but why i could not view html module which is showing before in viewlist.
 
Previous
 
Next
HomeHomeGetting StartedGetting StartedNew to DNN Plat...New to DNN Plat...NavigateURL for Datagrid item for detail pageNavigateURL for Datagrid item for detail page


These Forums are dedicated to discussion of DNN Platform and Evoq Solutions.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
  2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  4. No Flaming or Trolling.
  5. No Profanity, Racism, or Prejudice.
  6. Site Moderators have the final word on approving / removing a thread or post or comment.
  7. English language posting only, please.
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out