none
Le nom "Settings" n'existe pas dans l'espace de noms "clr-namespace:GestionEntrepot_2018.Properties". RRS feed

  • Question

  • Bonjour voici un problème que je n'avais pas encore rencontré, lorsque je tente d'associer le contenu d'un label à un paramètre (Settings) dans la liste d'erreur j'ai ce message d'erreur (titre du thread).

    Voici le détails de mon code XAML :

    Window x:Class="GestionEntrepot_2018.Pages2018.Product_Details"
            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:local="clr-namespace:GestionEntrepot_2018.Pages2018"
            xmlns:appSettings="clr-namespace:GestionEntrepot_2018.Properties"
            mc:Ignorable="d"
    <!--#region Prod Name-->
                <Label x:Name="Prod1NameLB"
                       Content="{Binding Source={x:Static appSettings:Settings.Default},Path=ProductName}"
                Grid.ColumnSpan="3"/>
                <!--#endregion-->



    JF Collombet ® CreateSpecificCulture

    lundi 9 avril 2018 13:13

Toutes les réponses

  • Bonsoir Jean-Francois,

    j'ai fais une petite recherche par rapport a ce cas de figure, y'a deja un thread sur (MSDN/en-us) par rapport au meme sujet, y'a un type de resource ObjectDataProvider qu'on peux declarer aux niveau des resources du Window:

    <Window x:Class="WPF_WMPlayer.MainWindow"
            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:local="clr-namespace:WPF_WMPlayer"
            mc:Ignorable="d"
            Height="450" Width="800"
    
            xmlns:properties="clr-namespace:WPF_WMPlayer.Properties"        
    
            Title="MainWindow">
    
        <Window.Resources>
            <ObjectDataProvider x:Key="setting1" ObjectType="{x:Type properties:Settings}"></ObjectDataProvider>
        </Window.Resources>
        <Grid>
             <Label Content="{Binding Source={StaticResource ResourceKey=setting1}}"/>
        </Grid> 
    </Window>

    et voici le lien vers le thread.

    Good Coding;


    dimanche 21 octobre 2018 23:35
  • Bonjour, j'ai trouvé !

    en fait lorsque l'on crée une application WPF par défaut, la plateforme cible est "Any CPU". et la ca fonctionne.

    par contre moi j'ai besoin de définir la plateforme cible sur x64. Et c'est la que survient ce problème. Pourquoi ?? ca j'en sait rien...


    JF Collombet ® CreateSpecificCulture

    lundi 22 octobre 2018 03:57
  • Bonjour,

    si c'est le cas alors c'est parfait, mais ca m'a l'air d'une coincidence, car la configuration (AnyCPU/X64/x86) n'a aucun effet en design time vu que ca concerne la compilation, ainsi il est strictement necessaire d'utiliser ObjectDataProvider au niveau des ressources de notre Window, de la sorte on peux l'utiliser au niveau des binding a travers le fournisseur d'objet.

    Good Coding;



    lundi 22 octobre 2018 10:32