none
retrouver le contenue d'un XDocument parser RRS feed

  • Question

  • salut, c'est mon code:

     

                listBox1.ItemsSource = from response in r.Root.Descendants("result")

     

                                       let name1 = response.Element("name")

                                       select new resultt

                                       {

                                           NAME = name1 == null ? null : name1.Value,

     

                                       };

    je veux récupérer le contenu de chaque textblock existant dans la listBox dans laquelle j'ai mis le résultat du document parser et selon le résultat naviguer vers une page différente ... le pb est que je connais pas la proprièté qui permet me rendre ce résultat afin de le tester 

    Merci 

     


    zipo
    mercredi 27 juillet 2011 14:09

Réponses

  • if(listBox1.SelectedItem==null)
    
    return;
    
    string selectedText = listBox1.SelectedItem.ToString();
    
    



    S'il vous plaît n'oublier pas de marquer la ou les réponses qui aident à résoudre votre problème. Pour que la discussion puisse être marquée comme résolue
    mercredi 27 juillet 2011 19:09
    Modérateur
  • Bonjour,

    C'est le textBlock que vous voulez transferer vers une autre page? ou seulement le texte qu'il contient ?

    Si c'est seulement le texte je vous conseille de voir le tutorial sur la navigation winophone 7 : http://code.msdn.microsoft.com/La-Navigation-sous-Windows-63cde918 (il y a les sources avec).

     

    Mais pour résumé il faut que tu appelles ta page en lui passant un paramètre :

    Uri u = new Uri("/TaPage.xaml?Libelle=" + maChaineDecaractere, UriKind.Relative);
            this.NavigationService.Navigate(u);
    

    Et dans ta page ou tu attend le paramètre il te faut faire le code suivant :

    protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
        {
          base.OnNavigatedTo(e);
          if (NavigationContext.QueryString.ContainsKey("Libelle"))
          {
            String sLibelle = NavigationContext.QueryString["Libelle"];
          }
        }
    

     

     

     

     

     

     


    Cordialement, Pascal.

    Développeur Wpf/SilverLight/WinPhone7

    S'il vous plaît n'oublier pas de marquer la ou les réponses qui aident à résoudre votre problème. Pour que la discussion puisse être marquée comme résolue.
    jeudi 28 juillet 2011 11:24

Toutes les réponses

  • l'élement selectionné : 

     

    listBox1.SelectedItem --> retourne un elem de type resultt

     

    et pour un truc précis 

     

    listBox1.Items[1].DataContext -> retourne un elem de type resultt


    S'il vous plaît n'oublier pas de marquer la ou les réponses qui aident à résoudre votre problème. Pour que la discussion puisse être marquée comme résolue
    mercredi 27 juillet 2011 14:15
    Modérateur
  • j'ai utilisé cette methode afin de comparer les textblock que j'ai dans la liste mais il me rend cette erreur:ErroCannot implicitly convert type 'bool' to 'string'
    string selectedText = listBox1.SelectedItem.ToString();
                switch (selectedText)
                {
                    case (selectedText.Equals("aaaa")) :
    ....
    case (selectedTex.Equals("dddd");
    ...
                }
    j'ai un autre problème aussi c'est que je veux rendre le textblock de la listebox navigable et je ne sais pas comment faire puisque chaque textblock va être redirigé vers une page différente
    Merci

    zipo
    mercredi 27 juillet 2011 15:15
  • un switch case ce n'est qu'avec des type primitif (genre int bool) pas de string !

     

     if(selectedText.Equals("aaaa")) 
    ....
    if (selectedTex.Equals("dddd");
    ...
          
    



    S'il vous plaît n'oublier pas de marquer la ou les réponses qui aident à résoudre votre problème. Pour que la discussion puisse être marquée comme résolue
    mercredi 27 juillet 2011 15:51
    Modérateur
  • ok merci mais il me renvoit cette exception lors de l'éxecution: nullreferenceexception was unhaded sur tostring()

    je me demande aussi si je peux utiliser cette methode NavigationService.Navigate(new Uri("aaa.xaml", UriKind.Relative)); dans if afin qu'il navigue vers la page que je désire 

    Merci


    zipo
    mercredi 27 juillet 2011 16:16
  • oui tu peux sans prob
    S'il vous plaît n'oublier pas de marquer la ou les réponses qui aident à résoudre votre problème. Pour que la discussion puisse être marquée comme résolue
    mercredi 27 juillet 2011 16:21
    Modérateur
  • vous m'avez pas repondu a propos de l'exception qui m'envoi la methode tostring ici:

    string selectedText = listBox1.SelectedItem.ToString();

    Merci


    zipo
    mercredi 27 juillet 2011 16:27
  • vous m'avez pas repondu a propos de l'exception qui m'envoi la methode tostring ici:

    string selectedText = listBox1.SelectedItem.ToString();

    Merci


    zipo

    Si vous mettez un point d'arrêt sur cette ligne, je suis certain que le SelectedItem == null, donc impossible de faire le .ToString() sur un null.
    Microsoft MVP C# || gabrielmongeon.com || LinkedIn
    mercredi 27 juillet 2011 18:16
    Modérateur
  • if(listBox1.SelectedItem==null)
    
    return;
    
    string selectedText = listBox1.SelectedItem.ToString();
    
    



    S'il vous plaît n'oublier pas de marquer la ou les réponses qui aident à résoudre votre problème. Pour que la discussion puisse être marquée comme résolue
    mercredi 27 juillet 2011 19:09
    Modérateur
  • Bon je  croix que ta solution a marché mais  je me demande s'il ya une propriété que je doit ajouté afin que le texblock  de la listbox sélectioné pourra navigué vers une autre page !

    Merci


    zipo
    jeudi 28 juillet 2011 08:25
  • Penses à mettre les réponses qui t'ont servi en tant que réponse pour aider les prochains visiteurs ;)
    S'il vous plaît n'oublier pas de marquer la ou les réponses qui aident à résoudre votre problème. Pour que la discussion puisse être marquée comme résolue
    jeudi 28 juillet 2011 11:00
    Modérateur
  • Bonjour,

    C'est le textBlock que vous voulez transferer vers une autre page? ou seulement le texte qu'il contient ?

    Si c'est seulement le texte je vous conseille de voir le tutorial sur la navigation winophone 7 : http://code.msdn.microsoft.com/La-Navigation-sous-Windows-63cde918 (il y a les sources avec).

     

    Mais pour résumé il faut que tu appelles ta page en lui passant un paramètre :

    Uri u = new Uri("/TaPage.xaml?Libelle=" + maChaineDecaractere, UriKind.Relative);
            this.NavigationService.Navigate(u);
    

    Et dans ta page ou tu attend le paramètre il te faut faire le code suivant :

    protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
        {
          base.OnNavigatedTo(e);
          if (NavigationContext.QueryString.ContainsKey("Libelle"))
          {
            String sLibelle = NavigationContext.QueryString["Libelle"];
          }
        }
    

     

     

     

     

     

     


    Cordialement, Pascal.

    Développeur Wpf/SilverLight/WinPhone7

    S'il vous plaît n'oublier pas de marquer la ou les réponses qui aident à résoudre votre problème. Pour que la discussion puisse être marquée comme résolue.
    jeudi 28 juillet 2011 11:24
  • je veux tester sur le text contenu dans le textblock s'il est égale a la valeur souhaité je veux qu'il me navigue vers une autre page suite a un click

    Merci


    zipo
    jeudi 28 juillet 2011 13:49
  • mkacha5 : tu devrais déjà valider ce topic, et créer un autre car ce n'est plus du tout le même sujet :)
    S'il vous plaît n'oublier pas de marquer la ou les réponses qui aident à résoudre votre problème. Pour que la discussion puisse être marquée comme résolue
    jeudi 28 juillet 2011 15:44
    Modérateur
  • var selectedText = listBox1.SelectedItem.ToString();
    
    if(selectedText=="coucou")
    
    NavigationService.Navigate(new Uri("/mapageCoucou.xaml",Urikind.Relative));
    
    else if(selectedText=="tata")
    
    NavigationService.Navigate(new Uri("/mapageTATA.xaml",Urikind.Relative));
    
    else 
    
    ....
    



    S'il vous plaît n'oublier pas de marquer la ou les réponses qui aident à résoudre votre problème. Pour que la discussion puisse être marquée comme résolue
    jeudi 28 juillet 2011 15:48
    Modérateur
  • j'ai déja essayé cette methode mais sa fonctionne pas! doit je ajouter une propriété au grid sélectionné afin qu'il devient navigable ou clicable !!??

    merci


    zipo
    jeudi 28 juillet 2011 16:31
  • Est tu obligé d'utiliser un grid ?

    pourquoi tu ne choisis pas le click sur la listBox grâce à un abonnement au selectionChanged de ta listBox :

    TaListBox.SelectionChanged += new SelectionChangedEventHandler(lbFlux_SelectionChanged);
    

    Sinon regarde le lien que je t'ai donné il y a le code source fournit avec, cela pourra t'aider, car il y a une listbox et la passage de paramètre pour acceder à une autre page.

     


    Cordialement, Pascal.

    Développeur Wpf/SilverLight/WinPhone7

    S'il vous plaît n'oublier pas de marquer la ou les réponses qui aident à résoudre votre problème. Pour que la discussion puisse être marquée comme résolue.
    jeudi 28 juillet 2011 17:42
  • Bonjour,

    Est-ce que vous avez testé la solution proposée ? Merci de partager avec nous les résultats,afin que d'autres personnes avec le même problème puissent profiter de cette solution.


    Cordialement, Pascal.

    Développeur Wpf/SilverLight/WinPhone7

    dimanche 31 juillet 2011 13:23