ISTO E POSSIVEL NO VB.NET?
Bom dia!
Prezados colegas,
Tenho vários exemplos na Internet e mesmo aqui no VBMania,de código em VB.NET
para permitir criar um Browser.Geralmente usando o controle WEBBrowser.Mas,
meu problema é que além de exibir a página WEB no controle WEBBrowser,preciso
do seguinte:
Problema:
A página que irei exibir tem uma simples caixa de texto .Que é usada para o usuário
preencher com o nome do produto. O problema é que quando for exibida a página,
no controle WEBBrouser,tenho que preencher esta caixa de texto em tempo de execução.
Ou seja,via código.
Isto é possÃvel???
Prezados colegas,
Tenho vários exemplos na Internet e mesmo aqui no VBMania,de código em VB.NET
para permitir criar um Browser.Geralmente usando o controle WEBBrowser.Mas,
meu problema é que além de exibir a página WEB no controle WEBBrowser,preciso
do seguinte:
Problema:
A página que irei exibir tem uma simples caixa de texto .Que é usada para o usuário
preencher com o nome do produto. O problema é que quando for exibida a página,
no controle WEBBrouser,tenho que preencher esta caixa de texto em tempo de execução.
Ou seja,via código.
Isto é possÃvel???
Vc quer pegar o valor do texbox no seu form e passar para a pagina?
Não testei, mas acho que seria +/- assim
WebBrowser1.Document.GetElementById([Ô]sample[Ô]).GetAttribute([Ô]value[Ô]) = Textbox1.text
Para criar controles em tempo real nas páginas Asp.Net é necessário criar a variável do tipo do controle, especificar as propriedades do controle e inserir na coleção de controles da página:
[ô]variável criada e instanciada com o tipo TextBox
Dim txt As New TextBox()
txt.Text = [Ô]Rodrigo[Ô]
[ô]Insere na coleção de controles da página. O Form1 é o ID da página que está inserindo o controle
Page.FindControl([Ô]Form1[Ô]).Controls.Add(txt)
[ô]variável criada e instanciada com o tipo TextBox
Dim txt As New TextBox()
txt.Text = [Ô]Rodrigo[Ô]
[ô]Insere na coleção de controles da página. O Form1 é o ID da página que está inserindo o controle
Page.FindControl([Ô]Form1[Ô]).Controls.Add(txt)
Prezados colegas,
Não é isto!!!!!
A página do site na WEB, tem uma caixa de texto.Que quem desenvolveu deixou ali para que o usuário entre
com o nome de um produto. O que preciso ,é que meu código preencha esta caixa de texto,exatamente como
o usuário faria se tivesse que preencher na mão.Isto é possivel,no VB.NET???
Não é isto!!!!!
A página do site na WEB, tem uma caixa de texto.Que quem desenvolveu deixou ali para que o usuário entre
com o nome de um produto. O que preciso ,é que meu código preencha esta caixa de texto,exatamente como
o usuário faria se tivesse que preencher na mão.Isto é possivel,no VB.NET???
Então....
Não seria vc pegar algum valor do seu projeto(variavel, texbox, combobox... etc) e passar para a texbox da página?
Não seria vc pegar algum valor do seu projeto(variavel, texbox, combobox... etc) e passar para a texbox da página?
Fiz um exemplo aqui e veja se é isso que deseja
A resposta do altair está quase correta: WebBrowser1.Document.GetElementById([Ô]sample[Ô]).GetAttribute([Ô]value[Ô]) = Textbox1.text
Nela, vc busca o elemento pelo seu ID que ele colocou como sample.
Mas o usuário quer pôr esse valor com o .InnerText:
WebBrowser1.Document.GetElementById([Ô]TxtLogin[Ô]).InnerText = [Ô]seu_user_name[Ô]
Tenho um exemplo que fiz assim: colo quey o controle em um form. Criei uma variável chamada Operação. Quando essa variável tem o valor igual a [Ô]I[Ô], significa que é o inÃcio da abertura do form, pois no load do form coloquei a navegação para a página que quero e passei antes o parâmetro da variável para [Ô]I[Ô], então o evento DocumentCompleted do WebBrowser se encarrega do resto, veja:
Esse é o codigo como está no meu projeto, é só vc ver o que dá pra aproveitar aÃ.
Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
Try
Select Case sOperacao
Case Is = [Ô]I[Ô]
WebBrowser1.Document.GetElementById([Ô]TxtLogin[Ô]).InnerText = FbConn.nomUser
WebBrowser1.Document.GetElementById([Ô]TxtSenha[Ô]).InnerText = FbConn.strSenha
WebBrowser1.Document.GetElementById([Ô]BtLogin[Ô]).Focus()
SendKeys.Send([Ô]{ENTER}[Ô])
sOperacao = [Ô]D[Ô]
Case Is = [Ô]D[Ô]
WebBrowser1.Visible = True
PictureBox1.Visible = False
sOperacao = [Ô]F[Ô]
End Select
If InStr(WebBrowser1.Url.AbsoluteUri.ToString, [Ô]/Default.aspx?Opcao=Logout[Ô]) > 0 Then
Me.Close()
End If
frmPrincipal.ToolStripProgressBar1.Value = 0
Catch ex As Exception
End Try
End Sub
Nela, vc busca o elemento pelo seu ID que ele colocou como sample.
Mas o usuário quer pôr esse valor com o .InnerText:
WebBrowser1.Document.GetElementById([Ô]TxtLogin[Ô]).InnerText = [Ô]seu_user_name[Ô]
Tenho um exemplo que fiz assim: colo quey o controle em um form. Criei uma variável chamada Operação. Quando essa variável tem o valor igual a [Ô]I[Ô], significa que é o inÃcio da abertura do form, pois no load do form coloquei a navegação para a página que quero e passei antes o parâmetro da variável para [Ô]I[Ô], então o evento DocumentCompleted do WebBrowser se encarrega do resto, veja:
Esse é o codigo como está no meu projeto, é só vc ver o que dá pra aproveitar aÃ.
Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
Try
Select Case sOperacao
Case Is = [Ô]I[Ô]
WebBrowser1.Document.GetElementById([Ô]TxtLogin[Ô]).InnerText = FbConn.nomUser
WebBrowser1.Document.GetElementById([Ô]TxtSenha[Ô]).InnerText = FbConn.strSenha
WebBrowser1.Document.GetElementById([Ô]BtLogin[Ô]).Focus()
SendKeys.Send([Ô]{ENTER}[Ô])
sOperacao = [Ô]D[Ô]
Case Is = [Ô]D[Ô]
WebBrowser1.Visible = True
PictureBox1.Visible = False
sOperacao = [Ô]F[Ô]
End Select
If InStr(WebBrowser1.Url.AbsoluteUri.ToString, [Ô]/Default.aspx?Opcao=Logout[Ô]) > 0 Then
Me.Close()
End If
frmPrincipal.ToolStripProgressBar1.Value = 0
Catch ex As Exception
End Try
End Sub
Tópico encerrado , respostas não são mais permitidas