Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1

    Problema con proprietà

    Ciao a tutti,
    sto sviluppando un programma in visual basic che visualizza dei dati in label da un database e poi li invia, con un click sul button, in appositi elementi di un sito internet tramite webBrowser. I dati da inviare e il webBrowser sono in due window distinte perciò creo delle proprietà che prendono il valore delle label che poi devono essere richiamate dalla classe del webBrowser. Le proprietà sono dichiarate pubbliche e accessibili da altre classi. Il problema è che le proprietà richiamate dalla classe del webBrowser (tramite dichiarazione di nuova istanza e nuove variabili che dovrebbero prendere il valore delle rispettive proprietà) perdono il loro valore e nei campi vuoti del sito (visualizzato nel webBrowser) viene scritto "undefined" senza generare eccezioni. Qualcuno sa dirmi dove è il problema? Grazie

    ps L'applicazione è sviluppata in progetto WPF

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Posta il codice delle classi ...

    P.S. Dai un'occhiata al regolamento su come impostare il titolo delle discussioni e *dove* postarle dato che esiste una sezione per il VB.NET ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Dove lo trovo il regolamento?

    Il primo codice è quello presente nella classe VisualizzaInvia. Riguarda il button per l'invio. Sto provando ad inviare un solo dato, quello NomeScuola

    codice:
         Dim _NomeScuola As String
        Private Sub ButtonInvia_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles ButtonInvia.Click
    'eccezione in caso di selezione errata nella combobox
            Try
                If IndirizzoComboBox.SelectedIndex = -1 Then
                    Throw New IndexOutOfRangeException
                End If
            Catch ex As IndexOutOfRangeException
                MsgBox("Recordo non trovato")
                Exit Sub
            End Try
    'variabile di ritorno della proprietà
            _NomeScuola = NomeScuolaLabel.Content
    'Naviga nella window WebBrowserClass dove è situato il webBrowser
            Dim Navigation As New WebBrowserClass
            Navigation.ShowDialog()
        End Sub
    
    'Proprietà NomeScuola che viene richiamata dalla classe WebBrowser
        Public Property NomeScuola() As String
            Get
                Return _NomeScuola
            End Get
    
            Set(ByVal value As String)
                _NomeScuola = value
            End Set
        End Property 
    End Class
    La proprietà assume il giusto valore nella classe VisualizzaInvia perché ho provato a leggerlo con un MsgBox. Perde il suo valore nella classe WebBrowserClass

    codice:
     Class WebBrowserClass
    
        Dim Instance As New VisualizzaInviaClass
        Dim NomeScuolaVar As String
    
        Private Sub WebBrowser_Loaded(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs)
            InitializeComponent()
            WebBrowser1.Navigate("http://www.informaticascuole.it/joomla/index.php?option=com_chronoforms&chronoform=RapportinoLavoro")
        End Sub
    
        Private Sub WebBrowser1_LoadCompleted(ByVal sender As Object, ByVal e As System.Windows.Navigation.NavigationEventArgs) Handles WebBrowser1.LoadCompleted
            NomeScuolaVar = Instance.NomeScuola
            Dim doc As Object = WebBrowser1.Document
            Dim element As Object = doc.GetElementById("nscuola").SetAttribute("value", NomeScuolaVar)
        End Sub
    End Class
    Se c'è bisogno di altre info ditemi...

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Originariamente inviato da Marco.Maffei-12
    Dove lo trovo il regolamento?
    Beh ... proprio sopra il tuo post ... meno male che c'è scritto "In rilievo" ...

    Per il codice ... è molto confuso ... hai modo di zippare il progetto e inviarlo? (Però in modo celere perché non starò tutta la notte qui ...)
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    L'ho letto. Non sono pratico di forum perciò faccio ancora confusione. Pensavo di aver messo il post nella sezione VB...

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    La discussione te la sposterà il moderatore ... rileggi la mia ultima risposta.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    Ho zippato il progetto in formato RAR che non è supportato dal forum. come posso inviartelo?

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Mettilo in un sito da cui si possono scaricare gratuitamente file e metti il link qui
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  9. #9
    http://it.swoopshare.com/file/4958ed...s=IDAT&lang=it

    L'ho uppato qui. Per uppare non serve registrazione ma per scaricare non so se ce n'è bisogno. Io lo scarico tranquillamente. Il progetto contiene un dataset che prende i dati da un dbo. il dbo non è incluso nel file rar. Se si può risolvere dammi istruzioni. è la mia prima applicazione. Grazie

  10. #10
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    L'interazione tra le classi non è corretta ...

    Nella WebBrowserClass prevedi la proprietà NomeScuola e nella LoadCompleted non istanzi nulla ma semplicemente utilizzi il valore attuale della proprietà

    codice:
    Class WebBrowserClass
    
        Private NomeScuolaVar As String
    
        Public Property NomeScuola() As String
            Get
                Return NomeScuolaVar
            End Get
    
            Set(ByVal value As String)
                NomeScuolaVar = value
            End Set
        End Property
    
        Private Sub WebBrowser_Loaded(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs)
            InitializeComponent()
            WebBrowser1.Navigate("http://www.informaticascuole.it/joomla/index.php?option=com_chronoforms&chronoform=RapportinoLavoro")
        End Sub
    
        Private Sub WebBrowser1_LoadCompleted(ByVal sender As Object, ByVal e As System.Windows.Navigation.NavigationEventArgs) Handles WebBrowser1.LoadCompleted
            Dim doc As Object = WebBrowser1.Document
            Dim element As Object = doc.GetElementById("nscuola").SetAttribute("value", NomeScuolaVar.ToString())
        End Sub
    End Class
    Nella classe VisualizzaInviaClass invece, devi prevedere

    codice:
       Dim Navigation As New WebBrowserClass
       Navigation.NomeScuola = "Valore da impostare"  ' o dalla label che vuoi 
       Navigation.ShowDialog()
    No MP tecnici (non rispondo nemmeno!), usa il forum.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.