- Home
- Categorie
- Coding e Sistemistica
- Altri linguaggi per il web
- file .aspx parte del codice non è letto
-
Ciao Zeck,
In Asp.net gli include non si usano (francamente non so nemmeno se sono supportati...). Hai quindi 2 alternative:
- Master page
- User controlVisto che a quanto ho capito il menu dovrebbe essere riproposto in tutte le pagine ti conviene creare una master page contenente il menu e poi crei le pagine a cui occorre il menu, impostando sulla pagina la master page che hai creato.
Altrimenti metti la tabella contenente il menu in una User Control e poi richiami la User Control nelle pagine in cui vuoi che siano presenti i menu.
Spero di averti aiutato
-
come suggerito ho usato la master page per richiamare un "titolo" comune a più pagine, lo script prodotto è questo:
<%@ Page Language="VB" masterpagefile="Titolo.master" title="Untitled 1" %>
Domanda:
come si fa ad aggiungere una seconda master page contenete il menu?(sempre per il concetto di voler ripetere su più pagine stessi contenuti)
Ho provato ma due richiami a master page non sono accettati.:?
-
Non puoi mettere il menu nella stessa master page?
-
@zeck said:
come suggerito ho usato la master page per richiamare un "titolo" comune a più pagine, lo script prodotto è questo:
<%@ Page Language="VB" masterpagefile="Titolo.master" title="Untitled 1" %>
Domanda:
come si fa ad aggiungere una seconda master page contenete il menu?(sempre per il concetto di voler ripetere su più pagine stessi contenuti)
Ho provato ma due richiami a master page non sono accettati.:?vorrei provare anche con le user control ma non riesco a trovare lo "script" per richiamare la pagina, qualcuno mi può aiutare? grazie
-
@cali1981 said:
Non puoi mettere il menu nella stessa master page?
si posso, ma si ripropone il problema con tabelle di testo ecc.
vorrei trovare una soluzione che permetta di inserire in una pagina contenuti creati singolarmente.
-
con php è una cosa possibile; basta fare
<?php
include '_menu.php';
?><?php
include 'php/scheda_tecnica.php';
?>e si hanno due "tabelle" indipendenti una sopra l'altra.
Possibile che in ASP.NET non si riesca a fare una cosa del genere?
-
Puoi fare un user control, se usi VS basta che lo trascini nella pagina dove vuoi metterlo. Per quanto riguarda la master page, cosa intendi che poi avresti problemi con le tabelle di testo?
Per l'inserimento dell'UserControl in asp.net devi registrarlo in cima alla pagina con:<%@ Register TagPrefix="MyUC" TagName="Test" Src="uc.ascx" %>
E poi dentro puoi usarlo con
<MyUC:Test runat="server" />
-
Grazie cali1981 per il tuo aiuto!
non ho VS, vorrei riuscire a far funzionare il codice che hai postato:
<%@ Register TagPrefix="MyUC" TagName="Test" Src="uc.ascx" %>
dentro
<MyUC:Test runat="server" />ma non ci riesco!!
il file che vorrei inserire sono questi:
_menu.ascx
_titolo.ascxcome devo scrivere questo
<%@ Register TagPrefix="MyUC" TagName="Test" Src="uc.ascx" %> ?
e questo
<MyUC:Test runat="server" /> ?grazie
-
Provato con
<%@ Register TagPrefix="ucMenu" TagName="menu" Src="menu.ascx" %>
<ucMenu:menurunat="server" />
-
@cali1981 said:
Provato con
<%@ Register TagPrefix="ucMenu" TagName="menu" Src="menu.ascx" %>
<ucMenu:menurunat="server" />
appare questo errore (vedi jpg allegata)
Ho impostato le pagine così:
pagina che deve caricare il file menu1.ascx
**<%@ Register TagPrefix="ucMenu1" TagName="menu1" Src="menu1.ascx" %>
**<html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>prova</title>
</head>
<body>
**<ucMenu1: menu1 runat="server" />
**<form id="form1" runat="server">
</form>
</body>
</html>menu1.ascx
<%@ Register TagPrefix="ucMenu1" TagName="menu1" Src="menu1.ascx" %>
<head>
<style type="text/css">
.style1 {
background-color: #008000;
}
.style2 {
background-color: #FF00FF;
}
</style>
</head>
<table style="width: 100%">
<tr>
<td class="style1"> </td>
<td> </td>
</tr>
<tr>
<td class="style2"> </td>
<td> </td>
</tr>
</table>
-
Il file menu1.ascx non deve contenere register!
-
Come diceva Cali, la direttiva register va messa solo nella pagina che richiama la usercontrol, **non **nella usercontrol stessa.
Inoltre hai inserito questo HTML nel file menu.ascx
[HTML]
<head>
<style type="text/css">
.style1 {
background-color: #008000;
}
.style2 {
background-color: #FF00FF;
}
</style>
</head>
<table style="width: 100%">
<tr>
<td class="style1"> </td>
<td> </td>
</tr>
<tr>
<td class="style2"> </td>
<td> </td>
</tr>
</table>
[/HTML]
ma è sbagliato, poichè non deve esserci alcun tag head in un usercontrol (poiché lo richiami all'interno del tag body), e gli stili li devi definire all'esterno dello UserControl, ad esempio in un file css che includi tramite la pagina chiamante. Quindi il contenuto corretto del menu sarrebbe questo
[HTML]
<table style="width: 100%">
<tr>
<td class="style1"> </td>
<td> </td>
</tr>
<tr>
<td class="style2"> </td>
<td> </td>
</tr>
</table>
[/HTML]Cmq, come avrai capito gli include del php si traducono in UserControl in Asp.net (non è sempre vero, ma in linea di massima si..).
-
@Holin said:
Quindi il contenuto corretto del menu sarrebbe questo
[html]
<table style="width: 100%">
<tr>
<td class="style1"> </td>
<td> </td>
</tr>
<tr>
<td class="style2"> </td>
<td> </td>
</tr>
</table>
[/html]Cmq, come avrai capito gli include del php si traducono in UserControl in Asp.net (non è sempre vero, ma in linea di massima si..).
Grazie, tutto Ok!!
Ho fatto come avete suggerito voi e in effetti il file viene riconosciuto e "incluso" nella pag .aspx.
Domanda:
se provo a inserire un menu fatto in asp nella pagina .ascx la pagina in .aspx non viene più letta!!:x[html]
<table style="width: 100%">
<tr>
<td class="style1"> </td>
<td><asp:Menu runat="server" id="Menu1" BackColor="#B5C7DE" Font-Size="0.8em" Font-Names="Verdana" StaticSubMenuIndent="10px" ForeColor="#284E98" DynamicHorizontalOffset="2">
<StaticMenuItemStyle HorizontalPadding="5px" VerticalPadding="2px" />
<DynamicHoverStyle BackColor="#284E98" ForeColor="White" />
<DynamicMenuStyle BackColor="#B5C7DE" />
<StaticSelectedStyle BackColor="#507CD1" />
<DynamicSelectedStyle BackColor="#507CD1" />
<DynamicMenuItemStyle HorizontalPadding="5px" VerticalPadding="2px" />
<StaticHoverStyle BackColor="#284E98" ForeColor="White" /></asp:Menu>
</td>
</tr>
<tr>
<td class="style2"> </td>
<td> </td>
</tr>
</table>
[/html]E' un problema di compatibilità tra asp e asp.net??:bho:
Se si come converto quel tipo di menu in asp.net?:?Grazie 1000 per il vostro aiuto.
-
Si certo, non puoi mettere asp e asp.net insieme, anche in asp c'è il menu, con vs lo trovi nel toolbox...
-
@cali1981 said:
Si certo, non puoi mettere asp e asp.net insieme, anche in asp c'è il menu, con vs lo trovi nel toolbox...
Ciao cali1981, immagino che per vs intendi visual studio, giusto?
Beh, se è visul studio è proprio da li che ho preso quello script del menu.Vorrei riuscire ad arrivare ad una conclusione:
a) continuo ad usare le pagina ascx e aspx e allora (se ho capito bene) devo trovare lo script di un menu per asp.net (giusto? ne avete uno orizzontale con le finestre che si aprono con mouse on?)
b) cambio e suo pagine asp (a questo punto non sono in grado di "includere" pagine) chi mi aiuta con lo script per a pagina che ho postato prima?grazie
-
Quello che serve a te è il css di un menu orizzontale, perchè nello script del menu in asp.net tu metti solo le voci di menu (o il file sitemap da cui prenderle) poi colleghi un file css. Quindi non si tratta di c#. Uno script per il menu potrebbe essere quello che hai fatto tu con qualche modifica, puoi trovare una bella descrizione qui : eggheadcafe.com/articles/20050531.asp
-
@cali1981 said:
Quello che serve a te è il css di un menu orizzontale, perchè nello script del menu in asp.net tu metti solo le voci di menu (o il file sitemap da cui prenderle) poi colleghi un file css. :bho:
come collego il file css??
Ipotizziamoi che devo visulaizzare il menu qui (è parte di un file ascx):<td colspan="2">QUI</td>
come lo scrivo collegando solo il file css?
non avresti un esempio di ascx con all'interno un richiamo di menu css?
-
Io non ho capito se vuoi usare il componente menu di asp.net o vuoi farne uno nuovo tu..
Nel caso in cui vuoi farne uno nuovo devi:
- fare il css per il menu
- collegare il css con il tag link nell'head della pagina
- creare la struttura del menu nel punto in cui vuoi che compaia
- se hai dubbi cerca "menu a comparsa css" su google.. ne dovresti trovare a iosa di esempiNel caso in cui vuoi usare il componente menu di asp.net devi:
- scarica gli adattatori per i componenti di asp.net (vvv.asp.net/cssadapters/). Servono a fare in modo tale che asp.net generi codice che sia modificabile tramite CSS per alcuni componenti, tra cui anche il menu
- generi un progetto nuovo usando lo scheletro che ti hanno isntallato i cssadapters (se usi vs 2005)
- crei il componente Menu (toolbox->navigation->menu) nel punto in cui vuoi visualizzarlo
- lo riempi
- poi prendi il css che serve (se non mi sbaglio si chiama proprio CSS/menu.css) e lo modifichi come serve a te
- colleghi il css alla pagina contenente il menu
- se hai dubbi sull'utilizzo dei cssadapters basta che guardi gli esempi di corredo, sono molto semplici.Spero di essere stato chiaro e di aiuto
-
@Holin said:
Io non ho capito se vuoi usare il componente menu di asp.net o vuoi farne uno nuovo tu..
Nel caso in cui vuoi farne uno nuovo devi:
-
fare il css per il menu
-
collegare il css con il tag link nell'head della pagina
-
creare la struttura del menu nel punto in cui vuoi che compaia
-
se hai dubbi cerca "menu a comparsa css" su google.. ne dovresti trovare a iosa di esempiNel caso in cui vuoi usare il componente menu di asp.net devi:
-
scarica gli adattatori per i componenti di asp.net (vvv.asp.net/cssadapters/). Servono a fare in modo tale che asp.net generi codice che sia modificabile tramite CSS per alcuni componenti, tra cui anche il menu
-
generi un progetto nuovo usando lo scheletro che ti hanno isntallato i cssadapters (se usi vs 2005)
-
crei il componente Menu (toolbox->navigation->menu) nel punto in cui vuoi visualizzarlo
-
lo riempi
-
poi prendi il css che serve (se non mi sbaglio si chiama proprio CSS/menu.css) e lo modifichi come serve a te
-
colleghi il css alla pagina contenente il menu
-
se hai dubbi sull'utilizzo dei cssadapters basta che guardi gli esempi di corredo, sono molto semplici.Spero di essere stato chiaro e di aiuto
Grazie per i consigli, ma nulla da fare...non riesco a fare ciò che vorrei.:?
Vorrei usare i componenti di ASP.NET ma quando l'inserisco in una pagina che "includo" la pagina "contenitore" non viene più letta. Ho scaricato gli adapters ma non è cambiato nulla.
-