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

Langages Discussion :

Refresh DataGrid après Suppession ou Ajout MVVM WPF


Sujet :

Langages

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2015
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2015
    Messages : 23
    Points : 28
    Points
    28
    Par défaut Refresh DataGrid après Suppession ou Ajout MVVM WPF
    Bonjour,

    après une suppression d'un ligne de mon DataGrid , j'ai un problème pour faire Refresh direct du DataGrid,

    Voici mon XAML:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <DataGrid x:Name="EmpDataGrid"
     
                          ItemsSource="{Binding loadDataBinding,Mode=TwoWay}"                   
                          CanUserResizeRows="False"
                          CanUserAddRows="False"
                          SelectedItem="{Binding CurrentCustomer}" Grid.ColumnSpan="2">
    ViewModel:

    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
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    private ObservableCollection<Custmor> _loadDataBinding;   
     
    public ObservableCollection<Custmor> loadDataBinding
    {
        get
        {
            return _loadDataBinding;
        }
        set
        {  _loadDataBinding = value;
            OnPropertyChanged("loadDataBinding");
        }
    }
     
     
     public ViewModel1()
    {
      //Affichage mon DataGrid
        using (Test1Entities context = new Test1Entities())
        {
            _loadDataBinding = new ObservableCollection<Custmor>(context.Custmor.ToList());
        }       
     
      deleteCustomer = new RelayCommand(delete, canexecute);   
    }
     
    private ICommand deleteCustomer;
    public ICommand DeleteCustomer
    {
        get { return deleteCustomer; }
    }
     
     
    private void delete(object obj)
    {
     
        using (Test1Entities context = new Test1Entities())
        {          
            Custmor cus = context.Custmor.Find(currentCustomer.ID);
            context.Custmor.Remove(cus );
            context.SaveChanges();
        }
    }
     
     
    private Custmor currentCustomer;
     
    public Custmor CurrentCustomer
    {
        get { return currentCustomer; }
        set
        {
            currentCustomer = value;
            test = currentCustomer;
            OnPropertyChanged("CurrentCustomer");
        }
    }
     
    loadDataBinding.ToList();

    Voici mon affichage Datagrid:
    Nom : displayy.PNG
Affichages : 508
Taille : 18,2 Ko

    et quand je clique sur le Bouton delete, le Datagrid ne rafraîchit pas !!et dans mon base de donné est bien supprimé

    Comment je corrigerai cette erreur?

    Merci d'avance,

  2. #2
    Membre régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2013
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2013
    Messages : 51
    Points : 72
    Points
    72
    Par défaut
    Il faut aussi supprimer la ligne dans loadDataBinding (loadDataBinding.Remove(currentCustomer)).

    Cette liste est découplée de la base de données et existe au niveau IHM seulement.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2015
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2015
    Messages : 23
    Points : 28
    Points
    28
    Par défaut
    Merci beaucoup,

    il est bien corrigé

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Refresh dropdown après ajout dans datatbase mysql
    Par didoalilo dans le forum jQuery
    Réponses: 4
    Dernier message: 30/08/2016, 11h03
  2. Réponses: 4
    Dernier message: 21/07/2006, 10h14
  3. Réponses: 3
    Dernier message: 22/06/2006, 23h23
  4. [VB.NET] Recuperer numero ligne dans DATAGRID apres event
    Par stephane93fr dans le forum Windows Forms
    Réponses: 4
    Dernier message: 13/01/2005, 11h58

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