Logo Hardware.com.br
NoobMor
NoobMor Novo Membro Registrado
6 Mensagens 0 Curtidas

Dúvida vb com xml (title edit)

#1 Por NoobMor 14/03/2009 - 17:54
Bem é o seguinte queria saber como fazer um programa que inclua ,exclua ,altere e procure dados em um dataset não tipado,pegando dados xml.Tentei fazer assim: coloquei um combobox que conteria nomes.Apertando em pesquisar completaria os outros campos:telefone,celular e email.O problema é que não to conseguindo colocar os dados na combobox e consequentemente não estou conseguindo testar o programa.A seguir colocarei o código de todo o programa(é grandinho......):
Imports System.Data
Imports System.IO
Public Class Form1
Private tabelaTel As DataTable 'Tabela que armazena as informa‡äes
Private drEncontrou As DataRow 'Armazena as informa‡äes da linha localizada no arquivo XML
Private dsTelefone As New DataSet("AgendaTelefone") 'Cria o DataSet AgendaTelefone
Private dvTelefone As DataView 'Cria o DataView para ordenar os dados
Private alterouRegistro As Boolean = False 'informa se algum registro sofreu altera‡Æo
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
tabelaTel = New DataTable("Telefone")
tabelaTel.Columns.Add("Nome", Type.GetType("System.String"))
tabelaTel.Columns.Add("Telefone", Type.GetType("System.String"))
tabelaTel.Columns.Add("Celular", Type.GetType("System.String"))
tabelaTel.Columns.Add("Email", Type.GetType("System.String"))
tabelaTel.PrimaryKey = New DataColumn() {tabelaTel.Columns("Nome")}
dsTelefone.Tables.Add(tabelaTel)
If File.Exists("E:\Documents and Settings\comum\Meus Documentos\Agenda.xml") Then
dsTelefone.ReadXml("E:\Documents And Settings\comum\Meus Documentos\Agenda.xml")
dvTelefone = New DataView(tabelaTel)
dvTelefone.Sort = "Nome"
ComboBox1.DataSource = dsTelefone.Tables(0)
ComboBox1.DisplayMember = "Nome"
End If

End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If ComboBox1.SelectedIndex > 0 Then Exit Sub
drEncontrou = tabelaTel.Rows.Find(ComboBox1.Text)
If Not drEncontrou Is Nothing Then
Me.TextBox1.Text = drEncontrou("Nome")
Me.TextBox2.Text = drEncontrou("Telefone")
Me.TextBox3.Text = drEncontrou("Celular")
Me.TextBox4.Text = drEncontrou("Email")
Me.Button4.Enabled = True
Me.Button5.Enabled = True
Else
MsgBox("NÆo foi encontrado nenhum nome", MsgBoxStyle.Exclamation, Title:="Not Found Information")
Me.Button4.Enabled = False
Me.Button5.Enabled = False
End If

End Sub
Private Function CampoVazio() As Boolean
'Verifica se todos os campos estÆo preenchidos
For Each ctl As Control In Me.GroupBox1.Controls
If TypeOf ctl Is TextBox Then
If ctl.Text = String.Empty Then
MsgBox("Preencha todos os campos!!!")


Return True
End If
End If
Next
Return False
End Function
Private Sub LimparCampos()
For Each txt As Control In Me.GroupBox1.Controls
If TypeOf txt Is TextBox Then
txt.Text = String.Empty
End If
Next


'Desabilita os botäes Alterar e Excluir
Me.Button4.Enabled = False
Me.Button5.Enabled = False
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim dr As DataRow = tabelaTel.NewRow()
Try
If Not CampoVazio() Then
dr("Nome") = TextBox1.Text
dr("Telefone") = TextBox2.Text
dr("Celular") = TextBox3.Text
dr("Email") = TextBox4.Text
tabelaTel.Rows.Add(dr)
MsgBox("O nome " & TextBox1.Text & " foi adicionado na agenda")
alterouRegistro = True
LimparCampos()
End If
Catch ex As Exception
MsgBox("Ocorreu um erro relacionado ao cadastro.Tente usar nomes diferentes.", MsgBoxStyle.Exclamation, Title:="ERROR 12344476@!@$#")
LimparCampos()
End Try
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Try
If Not CampoVazio() Then
drEncontrou.BeginEdit()
drEncontrou("Nome") = Me.TextBox1.Text
drEncontrou("Telefone") = Me.TextBox2.Text
drEncontrou("Celular") = Me.TextBox3.Text
drEncontrou("Email") = Me.TextBox4.Text
drEncontrou.EndEdit()
MsgBox("O nome " & TextBox1.Text & " foi alterado com sucesso!!")
alterouRegistro = True
LimparCampos()
End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
Try
tabelaTel.Rows.Remove(drEncontrou)
LimparCampos()
MsgBox(TextBox1.Text & " Foi excluido com sucesso!!")
alterouRegistro = True
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
Dim resposta As DialogResult
Try
resposta = MessageBox.Show("Deseja salvar altera‡äes?", "Aviso", MessageBoxButtons.OKCancel, MessageBoxIcon.Question)
If resposta = Windows.Forms.DialogResult.OK Then
tabelaTel.AcceptChanges()
dsTelefone.WriteXml("Agenda.xml")
MsgBox("Tarefa completada com sucesso absoluto!!!")
Else
tabelaTel.RejectChanges()
End If
alterouRegistro = False
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub

End Class
Só para esclarecer uso Visual Basic 2008 e o arquivo xml se encontra na pasta E:\Documents and Settings\Meus Documentos\Agenda.xml.
Por favor me ajudem!Eu to desesperado!!!adeus.gif adeus.gif
Grato,
NoobMor
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal