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

Windows Presentation Foundation Discussion :

click droit sur datagrid


Sujet :

Windows Presentation Foundation

  1. #1
    Membre du Club
    Homme Profil pro
    Étudient ingénieur système d'information mobile
    Inscrit en
    Mars 2007
    Messages
    131
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudient ingénieur système d'information mobile

    Informations forums :
    Inscription : Mars 2007
    Messages : 131
    Points : 58
    Points
    58
    Par défaut click droit sur datagrid
    Bonjour
    J'ai un datagrid avec nom fichier type extension. Je voudrais avoir un menu pour le Click droit comportant supprime ouvrir modifier.
    Une piste pour m'indiquer comment faire ?

    Merci de m'aider

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 753
    Points
    39 753
    Par défaut
    Dans le ItemContainerStyle du DataGrid, définis un ContextMenu :

    Code XML : 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
    <DataGrid Name="dg" ItemsSource="{Binding Items}">
        <DataGrid.ItemContainerStyle>
            <Style TargetType="DataGridRow">
                <Setter Property="ContextMenu">
                    <Setter.Value>
                        <ContextMenu>
                            <MenuItem Header="Ouvrir"
                                      Command="{Binding DataContext.OpenCommand, ElementName=dg}"
                                      CommandParameter="{Binding}" />
                            <MenuItem Header="Modifier"
                                      Command="{Binding DataContext.EditCommand, ElementName=dg}"
                                      CommandParameter="{Binding}" />
                            <MenuItem Header="Supprimer"
                                      Command="{Binding DataContext.DeleteCommand, ElementName=dg}"
                                      CommandParameter="{Binding}" />						          
                        </ContextMenu>
                    </Setter.Value>
                </Setter>
            </Style>
        </DataGrid.ItemContainerStyle>
    </DataGrid>

    (en supposant que les commandes soient définies au niveau du DataContext du DataGrid, sinon il faudra ajuster un peu les bindings)

  3. #3
    Membre du Club
    Homme Profil pro
    Étudient ingénieur système d'information mobile
    Inscrit en
    Mars 2007
    Messages
    131
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudient ingénieur système d'information mobile

    Informations forums :
    Inscription : Mars 2007
    Messages : 131
    Points : 58
    Points
    58
    Par défaut
    ca marche mais j'ai une fonction openfile() et la commande click dans xaml génère des erreurs c'est quoi la solution

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 753
    Points
    39 753
    Par défaut
    Citation Envoyé par yassin123441 Voir le message
    sa marche mai j'ai une fonction openfile() et la commande click dans xaml genere des eurreur c koi la solution
    Sérieusement, mets toi à ma place et relis ta phrase... c'est complètement incompréhensible, d'autant plus que je ne connais pas ton code, et tu ne dis même pas quelle est l'erreur ! J'ai pas de boule de cristal, si tu ne donnes pas plus de détails je peux pas te dire ce qui ne va pas...

  5. #5
    Membre du Club
    Homme Profil pro
    Étudient ingénieur système d'information mobile
    Inscrit en
    Mars 2007
    Messages
    131
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudient ingénieur système d'information mobile

    Informations forums :
    Inscription : Mars 2007
    Messages : 131
    Points : 58
    Points
    58
    Par défaut
    voici la fonction openfile() dans mon code
    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    private void openFile(object sender, RoutedEventArgs e)
            {           
    ouvrieUnFichier openFile = new ouvrieUnFichier(selected, idPersonne, privilegeModifier);  // classe ouvrir fichier
            }
    dans le code menu item je veut directement appele la fonction openfile en ajouton click a ton code.
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <MenuItem Header="Ouvrir"
      Command="{Binding DataContext.OpenCommand, ElementName=dg}"
     CommandParameter="{Binding}" 
     click="openfile" />

    j’espère que tu ma bien compris

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 753
    Points
    39 753
    Par défaut
    Ah ok...

    Soit tu utilises l'évènement Click, soit tu utilises les commandes, mais pas les deux... si tu veux utiliser l'évènement tu peux faire ça :

    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
        <MenuItem Header="Ouvrir" Click="openFile" />
    (attention aux majuscules/minuscules)

    Dans openFile, pour obtenir l'élément du DataGrid sur lequel on a cliqué, récupère le DataContext du sender :

    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    private void openFile(object sender, RoutedEventArgs e)
    {
        MenuItem menuItem = (MenuItem)sender;
        object selectedItem = menuItem.DataContext;
        ...
    }

Discussions similaires

  1. [VB6] Click droit sur MSHFlexGrid
    Par sab_etudianteBTS dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 08/06/2006, 09h47
  2. click-droit sur un exécutable
    Par jakouz dans le forum Langage
    Réponses: 3
    Dernier message: 27/09/2005, 14h49
  3. Réponses: 1
    Dernier message: 28/08/2005, 07h30
  4. Event Click droit sur ComboBox
    Par AF_STjohn dans le forum C++Builder
    Réponses: 8
    Dernier message: 29/04/2005, 11h48
  5. [JSP][Javascript] click droit sur un lien
    Par Stessy dans le forum Servlets/JSP
    Réponses: 22
    Dernier message: 24/09/2004, 10h14

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