Bonjour à tous,

J'essaie de respecter MVVM, mais parfois j'ai des informations qui ont été envoyé avec onpropertychanged

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
Public Class VM_Base
    Implements INotifyPropertyChanged
    Public Event PropertyChanged(sender As Object, e As System.ComponentModel.PropertyChangedEventArgs) Implements System.ComponentModel.INotifyPropertyChanged.PropertyChanged
 
    Public Sub OnPropertyChanged(Optional ByVal propname As String = "", <System.Runtime.CompilerServices.CallerMemberName> Optional memberName As String = Nothing)
        If propname = "" Then
            RaiseEvent PropertyChanged(Me, New PropertyChangedEventArgs(memberName))
        Else
            RaiseEvent PropertyChanged(Me, New PropertyChangedEventArgs(propname))
        End If
 
    End Sub
...
Dans mon titre j'indique une image par que c'est ce que me préoccupe dans le cas présent, mais cela peut le faire sur tout.
Mon image représente un voyant et avant de télécharger des données par le port COM, je change cette image.
Seulement l'image n'est pas immédiatement changer.

En VB6 on avait DoEvents, pour indiquer au programme de traiter les demandes en attente comme la mise a jour de l'affichage.
DoEvent n'existe pas, apparemment en WPF, mais une fonction permet de faire quelque chose de semblable:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
    Public Sub DoEvents()
        On Error Resume Next
        If Application.Current IsNot Nothing Then Application.Current.Dispatcher.Invoke(DispatcherPriority.Background, New ThreadStart(Sub()
                                                                                                                                       End Sub))
    End Sub
Seulement cette fonction m'indique pas spécialement de mettre à jour des taches annexe comme l'affichage, mais un timer en attente par exemple se lancera aussi. Ce qui dans mon cas me ralentit pas mal le traitement.

Ma question:
Y a t'il un moyen de forcer la mise à jour uniquement de l'affichage, afin que dès que je lui est fait un OnPropertyChanged il rafraichie uniquement cette variable.

Merci