Form Master

martedì 22 aprile 2008 - 11.42

kidrock Profilo | Junior Member

è possibile creare un form master che venga ereditata da altre form in modo da avere layout e metodi comuni?

Grazie
Ciao
Michele

"La sconfitta è un' eleganza.Per l'ipocrisia di chi si arrende in partenza."

aiedail92 Profilo | Expert

Ciao

Sì che si può fare, basta aggiungere il tuo Form, definire i metodi che vuoi vengano ereditati e il layout di base. Quindi per aggiungere un Form che erediti da questo basta usare la procedura per aggiungere un nuovo elemento, e selezionare Form ereditato dalla lista (in Windows Forms). Ti appare una finestra dove scegliere il Form base, dopo averlo selezionato clicki su ok e il gioco è fatto.

Luca

0v3rCl0ck Profilo | Guru

Di solito utilizzo una classe base che eridità da Forms e poi ogni pagina eridità dalla classe base creata, e di conseguenza tutti i suoi metodi.

Altrimenti aggiunti nel ContentPage:

<%@ MasterType TypeName="WebSite" VirtualPath="~/WebSite.Master" %>

e poi puoi chiamare i metodi definiti nel master così:

Master.NomeMetodo()

Ciao
- Michael -
http://blogs.dotnethell.it/Regulator/

kidrock Profilo | Junior Member

Ho creato una winform master e da questa la eredito su tutte le winform del mio progetto.
Tutte le volte che aggiungo degli oggetti nelle form(Eredita dalla form master layout e qualche funzione generale),gli oggetti sparicono ogni volta che esco e rientro dalla form;però guardando nel designer però ci sono.
Come mai?
Ciao
Michele

"La sconfitta è un' eleganza.Per l'ipocrisia di chi si arrende in partenza."

0v3rCl0ck Profilo | Guru

>Ho creato una winform master e da questa la eredito su tutte
>le winform del mio progetto.
>Tutte le volte che aggiungo degli oggetti nelle form(Eredita
>dalla form master layout e qualche funzione generale),gli oggetti
>sparicono ogni volta che esco e rientro dalla form;però guardando
>nel designer però ci sono.
>Come mai?

Devi agire sulla proprietà Modifier dei controlli sulla form base, e cambiarla in Protected o Public, in questo modo dalla form che eredità quella base, potrai modificare i controlli esposti.

Però ci sono delle eccezioni per alcuni controlli, che a livello di DESIGN, non possono essere modificati, neppure se la proprietà è settata correttamente a Protected o Public. I controlli con questa mancanza sono:

ToolStrip, MenuStrip, ContextMenuStrip and StatusStrip
ToolStripContainer
ToolStripPanel
SplitContainer
TableLayoutPanel
FlowLayoutPanel
DataGridView
MaskedTextBox
WebBrowser

Ricorda che però lato codice rimane sempre la possibilità di utilizzare i suddetti controlli, il problema è che non li puoi utilizzare da design, e quindi sei costretto a scrivere linee di codice per aggiungere i tuoi controlli ad esempio su di un TableLayoutPanel.

>Ciao
> Michele

Ciao
Enjoy It
- Michael -
http://blogs.dotnethell.it/Regulator/
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5