Ir para conteúdo


Foto

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


1 resposta neste tópico

#1 little_angel

little_angel
  • Membros
  • 14 posts
  • Gender:Female
  • Location:São Paulo

Postado 09 abril 2008 - 16:03

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.gif
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.gif
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.gif
Mas imagino que esteja uma lambança só... rsrs...

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

CODE
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


#2 ----Renato -- --

----Renato -- --
  • Visitantes

Postado 14 julho 2008 - 14:31

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



Responder



  


0 usuário(s) está(ão) lendo este tópico

0 membros, 0 visitantes, 0 membros anônimos