IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Presentation Foundation Discussion :

Style popup avec ombre


Sujet :

Windows Presentation Foundation

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 74
    Points : 35
    Points
    35
    Par défaut Style popup avec ombre
    Bonjour,

    je cherche a me faire un style à appliquer à mes popups. Pour l'instant c'est un enchainements de borders avec un corner radius à 3 qui me permet de constituer la "fenêtre" mais quand je cherche à appliquer une ombre sur mon popup c'est la catastrophe, ça se met à ralentir et l'application devient inutilisable...

    J'ai essayé de faire mon style tout seul avec un border mais je n'arrive pas à recréer l'effet d'ombre, quelqu'un saurait comment faire ???

    Merci !

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 562
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 562
    Points : 1 313
    Points
    1 313
    Par défaut
    ca ca devrait t'aider
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     <Popup x:Name="popup" Placement="Mouse" HorizontalAlignment="Left" VerticalAlignment="Top" AllowsTransparency="True">
                <mwt:SystemDropShadowChrome Color="#71000000" Name="Shdw" SnapsToDevicePixels="True" Margin="0,0,5,5">
                    <Border Background="{DynamicResource {x:Static SystemColors.InfoBrushKey}}" BorderBrush="#FF000000" BorderThickness="1" Name="border">
                        <TextBlock Text="alpha sdfsdfdsf sdfsfsdf sdfdfsdf sdfsdfsdfsdf sdfsdfsd" x:Name="popuptext" Margin="2"/>
                    </Border>
                </mwt:SystemDropShadowChrome>
            </Popup>
    et pour le xmnls
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
        xmlns:mwt="clr-namespace:Microsoft.Windows.Themes;assembly=PresentationFramework.Luna"
    ajoute la reference PresentationFramework.Luna
    IKEAS : Finalement je crois que c'est dans ses faiblesses que l'on y trouve a la fois de la force et a la fois de la richesse...
    ----------------------------------------------------
    Si vous avez du taf en wpf & design d'application sympa, contactez moi !!!!
    http://ultimatecorp.eu/wpf/

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Je suppose que tu utilises un DropShadowBitmapEffect ? Cet effet (et tous ceux hérités de BitmapEffect) sont rendus par le soft, sans accélération matérielle. Depuis la 3.5 SP1, il y a de nouveaux effets hérités de Effect, qui utilisent l'accélération matérielle. Tu peux donc utiliser DropShadowEffect par exemple. Et il faut utiliser la propriété Effect, et non BitmapEffect

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 74
    Points : 35
    Points
    35
    Par défaut
    merci mais ça continue de ramer... C'est sur une appli sur très grand écran, et le popup est une vue qu'on ouvre par dessus une toute l'appli et dès que je mets une ombre ça ralenti. Pas moyen de faire un border avec un beau dégradé ? J'ai pas trouvé comment faire un beau dégradé progressivement transparent sur tout le tour d'un border...

  5. #5
    Membre expérimenté
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 562
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 562
    Points : 1 313
    Points
    1 313
    Par défaut
    tu as essaye ma solution?
    IKEAS : Finalement je crois que c'est dans ses faiblesses que l'on y trouve a la fois de la force et a la fois de la richesse...
    ----------------------------------------------------
    Si vous avez du taf en wpf & design d'application sympa, contactez moi !!!!
    http://ultimatecorp.eu/wpf/

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 74
    Points : 35
    Points
    35
    Par défaut
    j'ai utilisé ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <Grid.Effect>
                    <DropShadowEffect RenderingBias="Performance"/>
                </Grid.Effect>
    C'est pareil que ce que tu m'as dit, ikeas ? Sinon j'ai une erreur qui me dit que le SystemDropShadowChrome est présent dans Luna et Aero.dll...

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 74
    Points : 35
    Points
    35
    Par défaut
    merci ikeas ça marche ton code ! j'ai juste dégagé le style luna...

    Par contre pour avoir des animations fluides vous avez des astuces ???

  8. #8
    Membre expérimenté
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 562
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 562
    Points : 1 313
    Points
    1 313
    Par défaut
    ca dépend chez moi les animation sont fluides
    donne moi un exemple ou c'est pas fluide que je regarde
    IKEAS : Finalement je crois que c'est dans ses faiblesses que l'on y trouve a la fois de la force et a la fois de la richesse...
    ----------------------------------------------------
    Si vous avez du taf en wpf & design d'application sympa, contactez moi !!!!
    http://ultimatecorp.eu/wpf/

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 74
    Points : 35
    Points
    35
    Par défaut
    c'est difficile de donner un exemple, là on a une application sous prisme avec beaucoup de modules, on affiche des formulaires sur une surface de 1920x1200 et par dessus ça je veux afficher un popup animé qui contient un autre formulaire... le tout avec des styles perso sur tout les composants.

Discussions similaires

  1. Lien avec fenêtre style popup
    Par laurentSc dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 21/03/2010, 00h12
  2. Réponses: 9
    Dernier message: 08/11/2007, 13h33
  3. Popup avec balise div
    Par Kerod dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 01/05/2005, 15h16
  4. Comment utiliser les styles XP avec Dev-C++?
    Par abraxas dans le forum Dev-C++
    Réponses: 3
    Dernier message: 05/10/2003, 19h47
  5. Popup avec un clic gauche
    Par Jéremy A dans le forum Composants VCL
    Réponses: 7
    Dernier message: 27/02/2003, 22h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo