Avatar billede np3designdk Nybegynder
17. juni 2009 - 10:51 Der er 1 kommentar

Hente MasterPage Title og selve .aspx titlen samtidig.

Hej,

Jeg sidder og leder efter en kode, der gør at jeg igennem programmering i VB.NET kan definere MasterPage Title og Default.aspx PageTitle.

Koden:       

Page.Title = String.Format("NP3Design.com | Freelance webdesigner & Programmør")


Min tanke er at jeg skal kunne programmere det sådan, når siden kører, skal den både kunnne hente Page.Title og hovedemenu punkterne på samme tid.

Eksempel på output.
NP3Design.com | Freelance webdesigner & Programmør - Forsiden.

Min BasePage class ser sådan ud:

=================================================================
Imports Microsoft.VisualBasic
Imports System.Data
Imports System.IO
Imports System
Imports System.Web.UI
Imports System.Web.UI.HtmlControls

Public Class BasePage
    Inherits System.Web.UI.Page

    Dim _strDB As String = "|DataDirectory|database.mdb"

    Protected Overrides Sub OnLoadComplete(ByVal e As EventArgs)

        If String.IsNullOrEmpty(Page.Title = "Untitled Page") Then

            Dim fileName As String = System.IO.Path.GetFileNameWithoutExtension(Request.PhysicalPath)


        End If

        MyBase.OnLoadComplete(e)
    End Sub
End Class
=================================================================
Hvordan kan dette lade sig gøre ?
Håber der er en der kan hjælpe
Avatar billede mrbonus Novice
24. juni 2009 - 10:31 #1
Jeg vedlægger et lille eksempel jeg lige har bygget, hvor jeg gemmer en title i en hiddenField på masterpage, og i min almindelige side, henter jeg så title ud fra masterpage, læg mærke til at det samme event (for eksempel "Load") køres først på webform, så title på masterpage, skal sættes i et tidligere event, jeg har anvendt "Init" til eksemplet.
Men det jeg tror interesserer dig mest er
Master.FindControl("hiddenFieldMasterTitle")
Hvor jeg henter kontrollen fra min masterpage.

-----------------------------------------------------------
Site1.Master:
<%@ Master Language="VB" AutoEventWireup="false" CodeBehind="Site1.master.vb" Inherits="WebTestApplication.Site1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Master title</title>
</head>
<body>
    <form id="form1" runat="server">
        <div>
            <asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
            </asp:ContentPlaceHolder>
            <asp:HiddenField ID="hiddenFieldMasterTitle" runat="server" Value="Master title" />
        </div>
    </form>
</body>
</html>
-----------------------------------------------------------
Site1.master.vb:
Partial Public Class Site1
    Inherits System.Web.UI.MasterPage
    Private Sub Page_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Init
        Me.hiddenFieldMasterTitle.Value = "Master level 3"
    End Sub
End Class
-----------------------------------------------------------
Webform7.aspx:
<%@ Page Language="vb" AutoEventWireup="false" MasterPageFile="~/Site1.Master" CodeBehind="WebForm7.aspx.vb" Inherits="WebTestApplication.WebForm7" title="WebForm 7 Title" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
</asp:Content>
-----------------------------------------------------------
webform7.aspx.vb:
Partial Public Class WebForm7
    Inherits System.Web.UI.Page
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Me.Title = CType(Master.FindControl("hiddenFieldMasterTitle"), HiddenField).Value & " - " & "Sub level 1"
    End Sub
End Class
-----------------------------------------------------------
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester



IT-JOB

Udviklings- og Forenklingsstyrelsen

Backend-udvikler til Java-baserede microservices

Udviklings- og Forenklingsstyrelsen

Seniorudviklere med lyst til faglige udfordringer

Politiets Efterretningstjeneste

Netværks- og/eller firewallspecialister til PET

Danske Commodities A/S

IT Systems Engineer