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

Silverlight Discussion :

GetElementById + Textbox Silverlight


Sujet :

Silverlight

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Mozofeuk
    Inscrit en
    Novembre 2007
    Messages
    326
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 326
    Par défaut GetElementById + Textbox Silverlight
    Bonjour a toutes et a tous

    J'aurais voulu savoir si il était possible de venir modifier le text d'une textbox ( en silverlight ) par le biais d'une fonction javascript ??

    Sachant que les éléments en xaml ne comporte pas d'attribut id, lequel doije utiliser ?

    <TextBox Text="TextBox" TextWrapping="Wrap" x:Name="Ma_TextBox" Tag="Ma_TextBox" x:Uid="Ma_TextBox" />

    j'ai essayer par le "name" le "tag" ( avec getElementByTag ) et avec le x:UId mais rien ne fonctionne.

    Comment puis-je proceder ? Cela est il possible de recuperer un control SL depuis javacript ?

    Cordialement MoZo

  2. #2
    Rédacteur
    Avatar de The_badger_man
    Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2005
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 745
    Les règles du forum
    Le trio magique : FAQ + Cours + fonction rechercher
    Mes articles
    Pas de questions par messages privés svp

    Software is never finished, only abandoned.

  3. #3
    Membre chevronné
    Profil pro
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    288
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 288

  4. #4
    Membre éclairé Avatar de Mozofeuk
    Inscrit en
    Novembre 2007
    Messages
    326
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 326
    Par défaut
    Merci a vous deux pour ces reponses. Sa ma tous l'air de pouvoir remplir la fonction dont j'avais besoin !!

    Encore merci

    Cordialement Mozo

  5. #5
    Membre éclairé Avatar de Mozofeuk
    Inscrit en
    Novembre 2007
    Messages
    326
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 326
    Par défaut
    J'ai un petit probleme, cela fonctionne a merveille sur ma page "page" mais en revanche sur la page2 rien a faire cela ne fonctionne pas pourtant le code est le meme ??

    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
    [ScriptableType]
        public partial class Page : UserControl
        {
     
     
            public Page()
            {
                InitializeComponent();
                Loaded += new RoutedEventHandler(Page_Loaded);
               HtmlPage.RegisterScriptableObject("silverlightMove", this);
     
     
            }
    private void bt_Click(object sender, RoutedEventArgs e)
            {
                HtmlPage.Window.Invoke("dodo");
            }
            [ScriptableMember]
            public void MoveBox()
            {
                Tb_Nom.Text = "erere";
     
            }
        }
    }
    Ici tous fonctionne bien, la fonction dodo vien bien executer la fonction MoveBox qui change le text d'une textbox silverlight, mais dans ma page 2 cela ne fonctionne pas ( echec de l'appel j'ai l'impression que il ne gere que les fonctions ecrite dans "Page" et npon celle ecrite dans page2

    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
    [ScriptableType]
        public partial class Page2 : UserControl
        {
     
     
            public Page2()
            {
                InitializeComponent();
                Loaded += new RoutedEventHandler(Page_Loaded);
                HtmlPage.RegisterScriptableObject("SilverlightPage2", this);
     
            }
            public Page2(string Nom,string Pass)
            {
                InitializeComponent();
                Loaded += new RoutedEventHandler(Page_Loaded);
                HtmlPage.Window.Invoke("CacheMap2");
                HtmlPage.Window.Invoke("goMap24");
                Lb_Nom.Text += Nom.ToString();
                HtmlPage.RegisterScriptableObject("SilverlightPage2", this);
     
     
            }
     
            [ScriptableMember]
            void PremierClick()
            {
                Tb_Latitude1.Text = "rere";
            }
            [ScriptableMember]
            void PremierClick(string longitude,string Latitude,string rue,string ville) {
                Tb_Latitude1.Text = Latitude;
                Tb_Longitude1.Text = longitude;
                Tb_Rue1.Text = rue;
                Tb_Ville1.Text = ville;
            }
     
            [ScriptableMember]
            void DeuxiemeClick(string longitude, string Latitude, string rue, string ville)
            {
                Tb_Latitude2.Text = Latitude;
                Tb_Longitude2.Text = longitude;
                Tb_Rue2.Text = rue;
                Tb_Ville2.Text = ville;
            }
         }
    }
    si je met un point d'arret sa ne passe meme pas par les fonction PremierClick et deuxiemeClick

    Et je vous montre ici mes source Jscript :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function dodo() {
        Xaml1 = document.getElementById("Xaml1");
     
        Xaml1.content.silverlightMove.MoveBox();
    }
    voila pour le premier, "Xaml1" est bien l'id de ma balise silverlight (<asp:Silverlight ID="Xaml1" runat="server" PluginBackground="Transparent" Windowless="true" BackColor="Transparent" Source="~/ClientBin/SilverlightToSql.xap" MinimumVersion="2.0.31005.0" )

    pour les second qui ne fonctionnent pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    function printResult1(location) {
     
        Xaml1 = document.getElementById("Xaml1");
        Xaml1.content.SilverlightPage2.PremierClick();
        //Xaml1.content.SLp2.PremierClick(location.getLongitude(), location.getLatitude(), location.getStreet(), location.getCity());
     
     
    }
    je rajoute les erreur decelés par la concoles d'erreur de firefox ci dessous

    Erreur*: uncaught exception: Error setting property on scriptable plugin object! [plugin exception: Object doesn't support this property or method].

    Erreur*: Unhandled Error in Silverlight 2 Application Échec de l'appel : printResult1. à System.Windows.Browser.ScriptObject.Invoke(String name, Object[] args)
    à SilverlightToSql.Page2.Button_Click(Object sender, RoutedEventArgs e)
    à System.Windows.Controls.Primitives.ButtonBase.OnClick()
    à System.Windows.Controls.Button.OnClick()
    à System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)
    à System.Windows.Controls.Control.OnMouseLeftButtonUp(Control ctrl, EventArgs e)
    à MS.Internal.JoltHelper.FireEvent(IntPtr unmanagedObj, IntPtr unmanagedObjArgs, Int32 argsTypeIndex, String eventName)

    Merci encore, Cordialement Mozo

  6. #6
    Membre éclairé Avatar de Mozofeuk
    Inscrit en
    Novembre 2007
    Messages
    326
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 326
    Par défaut
    Bon laisser tombé j'ai trouver mon erreur. Encore une fois c'était un truc a la co....

    En fait les membres [ScriptableMember] doivent etre declaré PUBLIC, se que je n'avais fais que dans la page "page" et non dans la "page2"

    En plus, a y reflechir, c'est quand meme plus que logique. Merci a tous pour votre aide !!

    Cordialement MoZo

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

Discussions similaires

  1. [Débutant] Evenements sur textbox Silverlight
    Par TheReturnOfMuton dans le forum Silverlight
    Réponses: 0
    Dernier message: 01/06/2015, 11h15
  2. Réponses: 6
    Dernier message: 21/07/2008, 20h36
  3. Réponses: 13
    Dernier message: 07/07/2008, 14h29
  4. Réponses: 7
    Dernier message: 04/07/2008, 17h25
  5. [Silverlight 1.1] Acces au textbox de la page APSX
    Par pc152 dans le forum Silverlight
    Réponses: 4
    Dernier message: 17/07/2007, 16h49

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