none
WPF PageFunction évènement Return

    Discussion générale

  • Bonsoir,

    Je teste les "PageFunction" de WPF pour naviguer d'une page à l'autre et récupérer les saisies de l'utilisateur sur la page.

    J'ai une classe 

     public partial class PageFunction1 : System.Windows.Navigation.PageFunction<RefSite>
    {
            RefSite m_CurrentSite;

            public PageFunction1(RefSite p_Site)
            {
                InitializeComponent();
                m_CurrentSite = p_Site;
            }

     private void BTNenregistrerSitePrefere_Click(object sender, RoutedEventArgs e)
     {
       MessageBox.Show("Ok");
       OnReturn(new ReturnEventArgs<RefSite>(m_CurrentSite)); //Exception à cet endroit
     }
    }

    La fenêtre principale

    public partial class MainWindow : Window
    {
         //Une variable
          RefSite m_CurrentSite;       

       //Constructeur
       public MainWindow()
       {
         InitializeComponent();
         m_CurrentSite = new RefSite { Adresse="inconnue", Description="sans description", MotClef="aucun" };
       }

      private void enregistrerSite_Click(object sender, RoutedEventArgs e)
      {
        m_CurrentSite.Adresse = new string(TboxWebAdresse.Text.ToCharArray());
        PageFunction1 l_PageS = new PageFunction1(m_CurrentSite);
        l_PageS.Return += PageSitePref_Return; //Gestionnaire de l'évènement           
        this.PageCourante.Navigate(l_PageS); //Afficher la page
      }

      //Gestionnaire de l'évènement dans la fenêtre principale (parent)
      private void PageSitePref_Return(object sender, ReturnEventArgs<RefSite> e)
      {
        MessageBox.Show($"Ok - {e.Result.Description}");
      }
    }

    Voici le message d'erreur

    Cordialement

    Gérard

    lundi 23 octobre 2017 18:39

Toutes les réponses

  • Bonjour,
    L'article suivant peut-être sera utile:
    Dépannage des exceptions : System.NotSupportedException.

    Cordialement,
    Nina

    Microsoft propose ce service gratuitement, dans le but d'aider les utilisateurs et d'élargir les connaissances générales liées aux produits et technologies Microsoft. Ce contenu est fourni "tel quel" et il n'implique aucune responsabilité de la part de Microsoft.

    mardi 24 octobre 2017 14:33
    Modérateur
  • Nina,

    Bonjour et merci pour la  réponse

    Oui, j'ai bien vu.

    Le message d'erreur précise:

    "le gestionnaire d'erreur doit être une méthode d'instance sur l'objet de la page parente."

    Il me semble que c'est ce que j'ai fait ou bien j'interprète mal le message.

    Au moment de l'erreur, l'exception précise que la page n'existe plus ou a été déplacée.

    Cordialement

    Gérard

    mardi 24 octobre 2017 15:00