Bonjour à tous.
D'abord j'espère que j'espère que j'ai pas posté où il faut pas ^^' et si je poste c'est parcque j'ai pas touvé ma reponse ailleurs(ou jai pas assez cherché).

Voila je m'explique; je souhaite modifier un control d'une fenêtre WPF à partir d'une application console (C#).

voici le code xaml.xs de ma fenetre WPF:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
 
namespace Process_
{
    /// <summary>
    /// Logique d'interaction pour Window1.xaml
    /// </summary>
    public partial class TestWindow : Window
    {
        public TestWindow()
        {
            InitializeComponent();
        }
 
 
        public void ChangeImage(string uri)
        {
            switch (uri)
            {
                case "Vert":
                    image1.Source = chargeImage("buttonGreen.ico");
                    break;
 
                default:
                    MessageBox.Show("erreur");
                    break;
            }
        }
 
 
        private System.Windows.Media.ImageSource chargeImage(string Uri)
        {
            // Create source.
            BitmapImage bi = new BitmapImage();
            // BitmapImage.UriSource must be in a BeginInit/EndInit block.
            bi.BeginInit();
            bi.UriSource = new Uri(@Uri, UriKind.RelativeOrAbsolute);
            bi.EndInit();
            // Set the image source.
 
            return bi;
        }
    }
}

Depuis mon application console, j'appelle ma methode ChangeImage de cette facon:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
    class Program
    {
        [STAThread]
        static void Main(string[] args)
        {
            TestWindow myTestWindow = new TestWindow();
            myTestWindow.ChangeImage("Vert");
 
 
            System.Windows.Application monApp = new System.Windows.Application();
            monApp.Run(new TestWindow());
 
        }
    }

Aucune erreur de compilation, normal.

Mais l'image ne change pas!
Alors que si je fais:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
        public TestWindow()
        {
            InitializeComponent();
            image1.Source = chargeImage("buttonGreen.ico");
        }
Ca marche


Si quelqu'un a une solution .... je suis preneur