Entre para seguir isso  
Seguidores 0

VB.NET - Atualizar Banco de Dados Access... =$

2 posts neste tópico

Postado · Denunciar post

Boa tarde...

Estou desenvolvendo, pela primeira vez, um sistema de busca em VB.Net e Access...

O sistema é simples, porém, não consigo fazer as informações do banco de dados correrem nos Texts. :blink:

São 4 TextBox, o banco está conectado, mas só aparece a primeira linha do Banco, ele não prosegue a leitura de "próximo" e "anterior" nem "primeiro" e "ultimo".

Já estou vesga... :blink:

Revirei os materiais do Marcoratti do avesso, mas sempre dá pane...

O controle dos botões eu fiz com BindingContext...

Segue abaixo o código, se alguém puder, me ajude, pleaseee...

Não consigo identificar o erro.. :unsure:

Mas imagino que esteja uma lambança só... rsrs...

------------------------------------------------------------------------------------------------------------------

Imports System.Data.OleDb
Imports System.IO
Imports System.Drawing

Public Class Form3
    Inherits System.Windows.Forms.Form

    Dim RecordCount As Integer
    Dim Position As Integer

    Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        ControleDataSet.Clear()
        'Preenche o DataSet
        Me.CadArquivosTableAdapter.Fill(Me.ControleDataSet.CadArquivos)
        'Vincula os Controles
        Me.txtAssunto.DataBindings.Add("Text", Me.ControleDataSet.CadArquivos, "Assunto")
        Me.txtDescricao.DataBindings.Add("Text", Me.ControleDataSet.CadArquivos, "Descricao")
        Me.txtArquivo.DataBindings.Add("Text", Me.ControleDataSet.CadArquivos, "Arquivo")
        Me.txtGaveta.DataBindings.Add("Text", Me.ControleDataSet.CadArquivos, "Gaveta")
        'Adiciona o Handles para o Evento Click
        AddHandler Me.btnProximo.Click, AddressOf Validacao
        AddHandler Me.btnAnterior.Click, AddressOf Validacao
        AtualizaLabel()
    End Sub

    Private Sub Validacao(ByVal sender As System.Object, ByVal e As System.EventArgs)

        'Obtem a quatidade de registros
        RecordCount = Me.BindingContext(Me.ControleDataSet.CadArquivos).Count
        'Obtem a posicao atual
        Position = Me.BindingContext(Me.ControleDataSet.CadArquivos).Position
        'Verifica se existem registros
        If RecordCount <= 1 Then
            Me.btnProximo.Enabled = False
            Me.btnAnterior.Enabled = False
            AtualizaLabel()
        End If
        'Analisa se podemos voltar
        If sender.Equals(Me.btnAnterior) Then
            If RecordCount > 1 Then
                Me.BindingContext(Me.ControleDataSet.CadArquivos).Position -= 1
            Else
                Me.btnAnterior.Enabled = False
            End If
        End If
        'Analisa se podemos avancar
        If sender.Equals(Me.btnProximo) Then
            Me.BindingContext(Me.ControleDataSet.CadArquivos).Position += 1
        Else
            Me.btnProximo.Enabled = False
        End If
        'Obtem a nova posicao
        Position = Me.BindingContext(Me.ControleDataSet.CadArquivos).Position + 1
        'Recalcula os status dos botoes de navegacao
        If RecordCount = Position Then
            btnProximo.Enabled = False
        Else
            btnProximo.Enabled = True
        End If
        If Position = 1 Then
            btnAnterior.Enabled = False
        Else
            btnAnterior.Enabled = True
        End If
        'Atualiza o label e mostra a posicao atual
        AtualizaLabel()
    End Sub

    Private Sub AtualizaLabel()
        RecordCount = Me.BindingContext(Me.ControleDataSet.CadArquivos).Count
        Position = Me.BindingContext(Me.ControleDataSet.CadArquivos).Position
        If RecordCount <= 1 Then
            lblPosicao.Text = "Sem Registro"
        Else
            lblPosicao.Text = "Registro " & Position & " de " & RecordCount
        End If
    End Sub

    Private Sub Form3_Unload()

    End Sub

    Private Sub Form3_Activate()

    End Sub

    Private Sub Form3_Deactivate()

    End Sub

    Private Sub CadastrarNovoArquivoToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CadastrarNovoArquivoToolStripMenuItem.Click
        Form1.Show()
        Me.Hide()
    End Sub

    Private Sub FazerNovaBuscaToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles FazerNovaBuscaToolStripMenuItem.Click
        Form2.Show()
        Me.Hide()
    End Sub

    Private Sub SairToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SairToolStripMenuItem.Click
        Dim Sair As String
        Dim Cancel As Integer
        Sair = MsgBox("Tem certeza de que deseja sair do sistema?", MsgBoxStyle.Exclamation + vbYesNo, "::: Controle de Arquivos :::")
        If Sair = vbYes Then
            End
        Else
            Cancel = True
        End If
    End Sub

    Private Sub Form3_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing
        If MessageBox.Show("Tem certeza de que deseja sair do sistema?", "Closing", MessageBoxButtons.YesNo) = Windows.Forms.DialogResult.No Then
            e.Cancel() = True
        Else
            End
        End If
    End Sub

    Private Sub lklAlterar_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles lklAlterar.LinkClicked
        Form4.Show()
        Me.Hide()
    End Sub

    Private Sub lklExcluir_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles lklExcluir.LinkClicked
        'Confirmar exclusao de registro
        Dim Resp As Integer
        Resp = MsgBox("Tem certeza que deseja excluir este registro?", MessageBoxButtons.YesNo, "::: Controle de Arquivos :::")
        If Resp = vbYes Then
            Me.BindingContext(ControleDataSet, "CadArquivos").RemoveAt(Me.BindingContext(ControleDataSet, "CadArquivos").Position)
        End If
    End Sub

    Private Sub txtAssunto_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAssunto.TextChanged

    End Sub

    Private Sub btnProximo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnProximo.Click
        'Incrementa a propriedade Position property do objeto BindingContext para mover um registro para frente.
        Me.BindingContext(ControleDataSet, "CadArquivos").Position += 1
    End Sub

    Private Sub btnAnterior_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAnterior.Click
        'Decrementa a propriedade Position property do objeto BindingContext para mover um registro para trás.
        Me.BindingContext(ControleDataSet, "CadArquivos").Position -= 1
    End Sub

    Private Sub btninicio_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btninicio.Click
        Me.BindingContext(ControleDataSet, "CadArquivos").Position = 0
    End Sub

    Private Sub btnfim_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnfim.Click
        Me.BindingContext(ControleDataSet, "CadArquivos").Position = Me.BindingContext(ControleDataSet, "CadArquivos").Count - 1
    End Sub
End Class

Compartilhar este post


Link para o post
Compartilhar em outros sites

Postado · Denunciar post

Oi, tenta algo assim... boa sorte...!!!

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

SUA_FUNCAO()

End Sub

Sub SUA_FUNCAO()

'Define a conexão, a string SQL, o DataSet, o BindingSource e o TableAdapter

Dim conn As New OleDbConnection(conexao)

Dim SQL As String

Dim dsSUA_TABELA As New DataSet()

SQL = "SELECT SUA_TABELA.CAMPO1, SUA_TABELA.CAMPO2, SUA_TABELA.CAMPO3 FROM SUA_TABELA"

Dim AdapterSUA_TABELA As New OleDbDataAdapter(SQL, conn)

Dim BindingSourceSUA_TABELA As New BindingSource

'Preenche o Adapter com o DataSet e a Table

AdapterSUA_TABELA.Fill(dsCLIENTES, "SUA_TABELA")

'Define o DataView com todos os dados (sem filtro)

DataViewSUA_TABELA = New DataView(dsSUA_TABELA.Tables("SUA_TABELA"))

BindingSourceSUA_TABELA.DataSource = dsSUA_TABELA

BindingSourceSUA_TABELA.DataMember = "SUA_TABELA"

'Abre a conexão

conn.Open()

'Define a origem de dados dos controles

SEU_BindingNavigator.BindingSource = BindingSourceSUA_TABELA

TextBox1.DataBindings.Add("Text", BindingSourceSUA_TABELA, "CAMPO1")

TextBox2.DataBindings.Add("Text", BindingSourceSUA_TABELA, "CAMPO2")

TextBox2.DataBindings.Add("Text", BindingSourceSUA_TABELA, "CAMPO3")

'Fecha a conexão

conn.Close()

End Sub

Compartilhar este post


Link para o post
Compartilhar em outros sites
Você está comentando como visitante. Se você tem uma conta, por favor, entre.
Responder
Entre para seguir isso  
Seguidores 0