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

Développement Windows Discussion :

[WPF] Erreur dans l'espace de noms


Sujet :

Développement Windows

  1. #1
    Membre à l'essai
    Femme Profil pro
    Auditeur informatique
    Inscrit en
    Août 2016
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Afghanistan

    Informations professionnelles :
    Activité : Auditeur informatique

    Informations forums :
    Inscription : Août 2016
    Messages : 27
    Points : 15
    Points
    15
    Par défaut [WPF] Erreur dans l'espace de noms
    Bonjour,
    Je début en programmation WPF, et j'ai suivie un petit tuto pour faire du dessin dans une fenetre WPF.
    J'ai une erreur (récurante) dans mes projets qui m'empéche la compilation:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Le nom "MoveThumb" n'existe pas dans l'espace de noms "clr-namespace:TestWpfAppControl"
    Je ne comprend pas ce qui ne va pas exactement,puisque j'ai crée une classe MoveThumb dans le namespace TestWpfAppControl,
    je pense avoir bien fait le lien avec le fichier XAML (dans l'en tête j'ai rajouter : xmlns:s="clr-namespace:TestWpfAppControl" ).
    Qu'ai-je oublié de faire pour que le compilateur fasse le lien entre ma classe MoveThumb et mon instruction dans le XAML?

    Pour info voici les bouts de code concerné:

    MainWindow.xaml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <Window x:Class="TestWpfAppControl.MainWindow"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            xmlns:s="clr-namespace:TestWpfAppControl"
            xmlns:local="clr-namespace:WpfAppControl;assembly=WpfAppcontrol"
            Title="Test Wpf App Container" Height="350" Width="525">
        <Window.Resources>
     
            <!-- MoveThumb Template -->
            <ControlTemplate x:Key="MoveThumbTemplate" TargetType="{x:Type s:MoveThumb}">
                <Rectangle Fill="Transparent"/>
            </ControlTemplate>

    Classe MoveThumb:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    namespace TestWpfAppControl
    {
        class MoveThumb : Thumb
        {
            public MoveThumb()
            {
                Debug.Print("MoveThumb");
                DragDelta += new DragDeltaEventHandler(this.MoveThumb_DragDelta);
            }
    Si quelqu'un à la réponse ou une piste je suis prenneur

  2. #2
    Expert confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2009
    Messages
    2 025
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2009
    Messages : 2 025
    Points : 5 462
    Points
    5 462
    Par défaut
    Je dirais simplement un 'public '. Bon ca c'est seulement si tu n'es pas dans la meme assembly, ce qui au final n'est surement pas le cas ici...
    Verifies que les porpriete du fichier MoveThomb.cs a bien comme Action de génération "Compiler".

    En regardant de plus pres tu as peut etre bien 2 assembly differentes puisque tu declares :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
           xmlns:s="clr-namespace:TestWpfAppControl"
            xmlns:local="clr-namespace:WpfAppControl;assembly=WpfAppcontrol"

  3. #3
    Membre à l'essai
    Femme Profil pro
    Auditeur informatique
    Inscrit en
    Août 2016
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Afghanistan

    Informations professionnelles :
    Activité : Auditeur informatique

    Informations forums :
    Inscription : Août 2016
    Messages : 27
    Points : 15
    Points
    15
    Par défaut
    J'ai effectivement deux assembly.Es-ce que cela posse probléme? Dans ma fenetre j'utilise un conteneur présent dans un autre projet (d'ou le second assembly).Doit je faire quelque chose de particulier pour faire référence à 2 assembly?

  4. #4
    Expert confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2009
    Messages
    2 025
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2009
    Messages : 2 025
    Points : 5 462
    Points
    5 462
    Par défaut
    Citation Envoyé par CoreDumpedped Voir le message
    J'ai effectivement deux assembly.Es-ce que cela posse probléme? Dans ma fenetre j'utilise un conteneur présent dans un autre projet (d'ou le second assembly).Doit je faire quelque chose de particulier pour faire référence à 2 assembly?
    Si tu n'est pas dans le même assembly tu dois déclarer ta class en public, par défaut elle n'est visible que dans le mème assembly. Il faut également que ta 2nd assembly soit referencée via visual studio.

Discussions similaires

  1. Réponses: 7
    Dernier message: 17/02/2011, 11h28
  2. Stopwatch manquant dans l'espace de nom
    Par monnoliv dans le forum C#
    Réponses: 8
    Dernier message: 21/03/2010, 20h23
  3. Réponses: 2
    Dernier message: 18/12/2009, 17h34
  4. Réponses: 1
    Dernier message: 27/04/2007, 14h28

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