vasco16 Posted April 29, 2009 at 10:17 PM Report #260111 Posted April 29, 2009 at 10:17 PM boas pessoal gostaria de saber como mostrar uma imagem que está armazenada na minha BD segundo um ID. Private Sub frmFoto_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load ' cria um DataSet ds = New DataSet ' cria um DataAdapter e retorna a tabela Categories Dim selectCommand As String = "SELECT CategoryID, CategoryName, Description FROM Categories" da = New OleDbDataAdapter(selectCommand, ConfigurationSettings.AppSettings("AcessoBD")) da.FillSchema(ds, SchemaType.Source, "Categories") da.Fill(ds, "Categories") ' vincula a tabela aos controles txtCodigo.DataBindings.Add("Text", ds, "Categories.CategoryID") txtNome.DataBindings.Add("Text", ds, "Categories.CategoryName") txtDescricao.DataBindings.Add("Text", ds, "Categories.Description") ' obtem o bm para a tabela pai bm = BindingContext(ds, "Categories") ' atualiza a imagem em resposta a cada posição do registro AddHandler bm.PositionChanged, AddressOf bm_PositionChanged ' atualiza e exibe para o primeiro registro bm_PositionChanged(Nothing, Nothing) End Sub
Asgorath Posted April 29, 2009 at 10:58 PM Report #260130 Posted April 29, 2009 at 10:58 PM Boas. Le isto http://aspalliance.com/1083_CodeSnip_How_to_ReadWrite_an_Image_to_Database_in_Binary_Format.3 "The Dark Side Clouds Everthing. Impossible To See The Future Is."My rig: Intel Core 2 Quad Q9450 | abit IP35P | 4G Kingston 800 Mhz | XFX GeForce 9800 GX2 1G ddr3 | 2X WD5000AAJS 500Gb Sata 2 | PSU 600W || Caixa El-Diablo | Creative XMod
vasco16 Posted April 30, 2009 at 02:51 PM Author Report #260254 Posted April 30, 2009 at 02:51 PM ja li, consigo implementar a imagem mas depois nao acompanha os registos..
passado Posted April 30, 2009 at 03:32 PM Report #260273 Posted April 30, 2009 at 03:32 PM Dim selectCommand As String = "SELECT CategoryID, CategoryName, Description FROM Categories" Penso que te falte aqui um Where, onde diga o que mostra por exemplo: Dim selectCommand As String = "SELECT CategoryID, CategoryName, Description FROM Categories Where CategoryID= "Qualquer coisa que te diga o ID que queres mostrar"
vasco16 Posted May 1, 2009 at 09:33 AM Author Report #260472 Posted May 1, 2009 at 09:33 AM boas estou sem novidades..😁 tenho este código no load: ' cria um DataSet ds = New DataSet ' cria um DataAdapter e retorna a tabela Categories Dim selectCommand As String = "SELECT matricula, marca, modelo FROM compras" da = New OleDbDataAdapter(selectCommand, Stand.My.Settings.ligacaoBD) da.FillSchema(ds, SchemaType.Source, "compras") da.Fill(ds, "compras") ' vincula a tabela aos controles matriculatext.DataBindings.Add("Text", ds, "compras.matricula") marcacombo.DataBindings.Add("Text", ds, "compras.marca") modelocombo.DataBindings.Add("Text", ds, "compras.modelo") ' obtem o bm para a tabela pai bm = BindingContext(ds, "compras") ' atualiza a imagem em resposta a cada posição do registro AddHandler bm.PositionChanged, AddressOf bd1_PositionChanged ' atualiza e exibe para o primeiro registro bd1_PositionChanged(Nothing, Nothing) e este no bindingsource: Private Sub bd1_PositionChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles bd1.PositionChanged ' refresca a foto exibida quando o registro atual muda ' obtem uma nova CategoryID usando o BindingManager 'Dim categoryId As Integer = CInt(ds.Tables("compras").Rows(bm.Position)("Id_compra")) ' cria a conexao Dim conn As New OleDbConnection(Stand.My.Settings.ligacaoBD) ' cria o commando para retornar a categoria das fotos Dim sqlText As [string] = "SELECT foto FROM compras WHERE id_compra=1" Dim cmd As New OleDbCommand(sqlText, conn) ' retorna a foto do banco de dados conn.Open() Dim image As [byte]() = CType(cmd.ExecuteScalar(), [byte]()) ' escreve o stream removendo a imagem do cabecalho Dim ms As New MemoryStream ms.Write(image, MSACCESSIMAGEMOFFSET, image.Length - MSACCESSIMAGEMOFFSET) conn.Close() ' carrega a imagem no picturebox PictureBox1.Image = System.Drawing.Image.FromStream(ms) ms.Close() End Sub agora só me está a dar erro na linha: PictureBox1.Image = System.Drawing.Image.FromStream(ms) diz: O parâmetro não é válido.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now