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

Silverlight Discussion :

Designer Visual Studio


Sujet :

Silverlight

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 156
    Par défaut Designer Visual Studio
    Bonjour,

    Depuis que je dev en Silverlight je n'utilise quasi pas le designer de VS 2008/2010 car il plante toujours.


    Du coup la j'essaye de résoudre tout ce qui freine l'utilisation du Designer.

    Par exemple j'ai fais un contrôle qui utilise ce style : "BusyIndicatorTemplate"

    Du coup quand j'herite du contrôle hop exception :
    Impossible de trouver un Resource avec le Name/Key BusyIndicatorTemplate [Line: 31 Position: 51]
    Le designer ne design rien. ^^

    A l'exécution du coup ça marche car j'ai inclue dans le App.xaml les fichier generic.xaml il y a le style en question.

    Est ce une bad pratice de ma part?

    Comment faite vous??

    Merci d'avance de vos réponses.

  2. #2
    Expert confirmé
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Par défaut
    Euh oui tu as l'air de mal t'y prendre. On n'a pas besoin d’hériter du BusyIndicator.

    Dis nous ce que tu souhaites faire.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 156
    Par défaut
    J'ai du mal m'exprimer personne n'a compris la question.

    Quand je créer un contrôle personnalise comme ceci:
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <XAML:MyChildWindow x:Class="WCommon.Controls.XAML.MyChildWindow "
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:XAML="clr-namespace:WCommon.Controls.XAML"
        xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation"
        Header="{Binding Title, Mode=TwoWay}" >
        <telerik:RadBusyIndicator IsBusy="{Binding IsBusy, Mode=TwoWay}" 
                                  BusyContentTemplate="{StaticResource BusyIndicatorTemplate}">
    ....
        </telerik:RadBusyIndicator>
    </XAML:MyChildWindow>


    Le designer de visual studio plante car il n'arrive pas à résoudre BusyIndicatorTemplate. Voir ci dessous le message d'erreur:
    Impossible de trouver un Resource avec le Name/Key BusyIndicatorTemplate [Line: 31 Position: 51]

    A l'exécution tout va bien car le template en question est appelé dans le App.xaml comme ceci :
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <Application.Resources>
     
            <ResourceDictionary>
                <ResourceDictionary.MergedDictionaries>
                    <ResourceDictionary Source="/My.WCommon.Controls.XAML;Component/themes/generic.xaml" />
                </ResourceDictionary.MergedDictionaries>
            </ResourceDictionary>
        </Application.Resources>

    Est ce une "bad pratice" d'avoir un fichier de style global a l'application?
    Si non, comment bénéficier du Designer de Visual Studio. En effet celui ci plante car il n'arrive pas à résoudre les styles et templates.

  4. #4
    Expert confirmé
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Par défaut
    Ben c'est surtout une bad practice de mettre ses styles dans le generic.xaml.

    Le generic.xaml est censé contenir le thème par défaut de custom controls que tu crées. Ici le template d'un BusyIndicator n'est pas un custom control.

    Après ce que je fais c'est créer un répertoire Styles ou je sépare bien mes styles. Ensuite je les références tous dans mon App.xaml.

    Pour etre sur que je n'ai rien oublie je lances Blend et je passes mes ressources une a une pour voir s'il me donne des erreurs.

    Dans ton cas tu dois sortir ton template de ton generic.xaml et le mettre dans un autre fichier (BusyIndicatorStyle.xaml par exemple). Ensuite tu references ce fichier dans ton App.xaml (avec un MergedDictionaries comme tu as fait). Et ca devrait fonctionner.

    Si ca ne fonctionne pas alors rajoutes egalement un link vers ton BusyIndicatorStyle.xaml directement dans le xaml de ta ChildWindow (avec un MergedDictionaries toujours).

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    156
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 156
    Par défaut
    Ok je vais faire ça.

    Ça risque de m'aider de pouvoir utiliser Blend et le designer de Visual Studio.


    Si ca ne fonctionne pas alors rajoutes egalement un link vers ton BusyIndicatorStyle.xaml directement dans le xaml de ta ChildWindow (avec un MergedDictionaries toujours).
    Du coup si ça fonctionne pas, je comprendrai pas pourquoi il faut les ajouter au App.xaml puisque chaque contrôle chargerai ses styles tout seul.

    Une autre question pendant que j'y suis, le fait d'ajouter via un MergedDictionaries un template, instancie un nouveau "Dictionary"?

    Donc le faire dans chaque contrôle ça risque pas de faire grossir la taille de l'applis en ram??

Discussions similaires

  1. Control Designer Visual Studio
    Par TiboodiT dans le forum Windows Forms
    Réponses: 0
    Dernier message: 06/01/2011, 10h46
  2. Problème designer Visual Studio
    Par silvinus dans le forum C#
    Réponses: 1
    Dernier message: 27/07/2009, 11h08
  3. Problemes silverlight et designer visual studio
    Par pas05 dans le forum Visual Studio
    Réponses: 0
    Dernier message: 14/07/2009, 20h42
  4. Designer Visual Studio 2005 - Remplacement des ImagesList
    Par ctxnop dans le forum Windows Forms
    Réponses: 4
    Dernier message: 28/11/2008, 09h37
  5. problème éditeur design Visual studio
    Par xx_FiFty_xx dans le forum Windows Forms
    Réponses: 3
    Dernier message: 10/06/2008, 13h21

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