Asp.net - comment contrôler un frameset et ses frames depuis le code behind

Contenu du snippet

Dans le même esprit que l'exemple de Jesusonline :
- http://www.aspfr.com/code.aspx?ID=22371

Il peut être utile de pouvoir gérer un frameset HTML et ses frame depuis le code Behind de la page.
Voici donc un exemple d'une des méthodes à suivre, il en existe sans doute beaucoup d'autres, mais celle-la me plaisait bien ;)

Source / Exemple :


' -------------------------------------------------------
' Dans la page ASPX (xxx.aspx)
....
<frameset runat="server" id="LaFrameSet">
  <FRAME runat="server" id="frameHeader" />
  <FRAME runat="server" id="frameCentrale" />
  <FRAME runat="server" id="frameFooter" />
</frameset>
....

' -------------------------------------------------------
' Dans le Code Behind (xxx.aspx.vb)
....
    Protected WithEvents LaFrameSet As System.Web.UI.HtmlControls.HtmlGenericControl
    Protected WithEvents frameHeader As System.Web.UI.HtmlControls.HtmlGenericControl
    Protected WithEvents frameCentrale As System.Web.UI.HtmlControls.HtmlGenericControl
    Protected WithEvents frameFooter As System.Web.UI.HtmlControls.HtmlGenericControl
....

        LaFrameSet = Me.FindControl("LaFrameSet")
        LaFrameSet.Attributes.Add("ROWS", "171,*,25") ' Ce sont les hauteurs voulues
        LaFrameSet.Attributes.Add("framespacing", "0")
        LaFrameSet.Attributes.Add("frameborder", "0")
        LaFrameSet.Attributes.Add("marginwidth", "0")
        LaFrameSet.Attributes.Add("marginheight", "0")
        LaFrameSet.Attributes.Add("topmargin", "0")
        LaFrameSet.Attributes.Add("leftmargin", "0")

        frameHeader = Me.FindControl("frameHeader")
        frameHeader.Attributes.Add("NAME", "hauttop")
        frameHeader.Attributes.Add("MARGINHEIGHT", "0")
        frameHeader.Attributes.Add("MARGINWIDTH", "0")
        frameHeader.Attributes.Add("topmargin", "0")
        frameHeader.Attributes.Add("leftmargin", "0")
        frameHeader.Attributes.Add("SCROLLING", "no")
        frameHeader.Attributes.Add("framespacing", "0")
        frameHeader.Attributes.Add("frameborder", "0")
        frameHeader.Attributes.Add("SRC", "VotreEnteteDePage.aspx")

        frameCentrale = Me.FindControl("frameCentrale")
        frameCentrale.Attributes.Add("NAME", "corpscentre")
        frameCentrale.Attributes.Add("MARGINHEIGHT", "0")
        frameCentrale.Attributes.Add("MARGINWIDTH", "0")
        frameCentrale.Attributes.Add("frameborder", "1")
        frameCentrale.Attributes.Add("SCROLLING", "auto")
        frameCentrale.Attributes.Add("framespacing", "0")
        frameCentrale.Attributes.Add("topmargin", "1")
        frameCentrale.Attributes.Add("leftmargin", "0")
        frameCentrale.Attributes.Add("SRC", "VotrePageCentrale.aspx")

        frameFooter = Me.FindControl("frameFooter")
        frameFooter.Attributes.Add("NAME", "bnav")
        frameFooter.Attributes.Add("MARGINHEIGHT", "0")
        frameFooter.Attributes.Add("MARGINWIDTH", "0")
        frameFooter.Attributes.Add("topmargin", "0")
        frameFooter.Attributes.Add("leftmargin", "0")
        frameFooter.Attributes.Add("SCROLLING", "no")
        frameFooter.Attributes.Add("framespacing", "0")
        frameFooter.Attributes.Add("frameborder", "0")
        frameFooter.Attributes.Add("SRC", "VotrePiedDePage.aspx")
...

Conclusion :


Bon Coding.

Romelard Fabrice (Alias F___)

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.