Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

kleinkauff

[Resolvido] Trazendo registros com foto no gridview

Recommended Posts

Boa noite pessoal..

To fazendo um ecommerce so pra aprende mesmo..

 

Eu tenho os registros com foto no meu bd. Eu consigo trazer pra uma grid os registros com suas respectivas fotos. Ate ai ok

 

Mas acontece q o grid vem grande demais pra onde eu quero colocalo.

A img vem sempre do lado do registro, eu quero que ela apareca encima e o nome do registro por exemplo, embaixo.. tem como?

 

To querendo faze tipo esse q agente ve por ai em ecommerces mesmo.. a foto do produto encima com o nome dele embaixo..

 

Se alguem tive uma dica ou sugestao a respeito..

 

Obrigado desde ja!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia,

 

fiz um esquema parecido com esse, mas eu usei um DataList.

 

<asp:DataList ID="DataList1" runat="server" RepeatColumns="4">
			<ItemTemplate>
				<div style="width:150px;height:200px;margin:3px;border:solid 1px #ddd">
					<div style="margin:2px;text-align:center;height:150px;background:#ddd">
						Imagem....
					</div>
					<div>
						nome do produto...
					</div>
				</div>
			</ItemTemplate>
		</asp:DataList>

fica mais fácil de manipular, depois pode trocar o css para modificar a visualizar de lista por colunas. Em um grid você não consegue fazer isso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

tiago, isso memso cara exatamente isso q keria, so nao sei agora cmo preencher com a imagem e o nome dos produtos, eu sei resgatar dados e tal do banco, mas como preencher ali eu nao sei nao.. você tem alguma dica?

 

consegui, parcialmente

 

no meu pageload eu tenho assim

string stringSql = "Data Source=JHONATAS\\SQLEXPRESS;Initial Catalog=LOJAWEB_PRODUCAO;Integrated Security=True";
		SqlConnection conn = new SqlConnection(stringSql);
		SqlCommand comm = new SqlCommand();
		comm.Connection = conn;
		comm.CommandText = "Select idproduto, nome, foto from produto where idproduto between 88 and 96";
		conn.Open();
		SqlDataAdapter adap = new SqlDataAdapter(comm);
		DataSet ds = new DataSet();
		adap.Fill(ds);

		DataList1.DataSource = ds;
		DataList1.DataBind();
		conn.Close();

e no meu asp

 

<div>

<asp:Label ID="Label1" runat="server" Text='<%# Eval("nome") %>'></asp:Label>

</div>

 

oq tah faltando e nao sei como posso faze eh pra aparece a img ali..

 

bom na ImageUrl eu tenho o seguinte ImageUrl='<%# "Handler.ashx?idproduto="+Eval("idproduto") %>'

 

onde era pra ir pra handler e carregar a foto conforme o idproduto. Mas a página handler nem esta sendo chamada é alguma coisa errada com oq eu passei no imageurl?

Compartilhar este post


Link para o post
Compartilhar em outros sites

eh sim quinte, criei um handler mas tb colokei o codigo em uma .aspx, estou tentando igual voce falou no outro topico. Aquilo funcionou mas agora para preencher as images estou tendo dificuldades..

 

<asp:DataList ID="DataList1" runat="server" RepeatColumns="4">
			<ItemTemplate>
				<div style="width:150px;height:200px;margin:3px;border:solid 1px #ddd">
					<div style="margin:2px;text-align:center;height:150px;background:#ddd">
					   <asp:Image ID="Image1" runat="server" ImageUrl=:( /> 
						//Aqui que nao sei oq por para aparecer minhas imagens..
					</div>
					<div>
						<asp:Label ID="Label1" runat="server" Text='<%# Eval("nome") %>'></asp:Label> 
						//Aqui esta funcionando perfeitamente carrega certinho o nome dos produtos embaixo de onde era pra aparecer as imagens..
					</div>
				</div>
			</ItemTemplate>
		</asp:DataList>

no load desta página tenho o codigo para preencher o datalist

 

protected void Page_Load(object sender, EventArgs e)
	{
		
		string stringSql = "Data Source=JHONATAS\\SQLEXPRESS;Initial Catalog=LOJAWEB_PRODUCAO;Integrated Security=True";
		SqlConnection conn = new SqlConnection(stringSql);
		SqlCommand comm = new SqlCommand();
		comm.Connection = conn;
		comm.CommandText = "Select idproduto, nome from produto where idproduto between 88 and 96";
		conn.Open();
		SqlDataReader dr = comm.ExecuteReader();
		List<Itens> list = new List<Itens>();
		while (dr.Read())
		{
			list.Add(new Itens { idproduto = (int)dr["idproduto"], nome = dr["nome"].ToString() });
		}

		DataList1.DataSource = list;
		DataList1.DataBind();
	   // conn.Close();
	}

mas como falei, n sei oq fazer para preencher as divs das imagens, nao consigu bolar algo.. quinte me ajuda nessa? hehe

 

Abraços!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara eu fiz esse exemplo rápido só para te mostrar.

 

<asp:DataList ID="DataList1" runat="server" RepeatColumns="4">
			<ItemTemplate>
				<div style="width: 150px; height: 200px; margin: 3px; border: solid 1px #ddd">
					<div style="margin: 2px; text-align: center; height: 150px; background: #ddd">
						<img src='<%#Eval("Imagem") %>' alt="" />
					</div>
					<div>
						<%#Eval("Nome") %>
					</div>
				</div>
			</ItemTemplate>
		</asp:DataList>

private SqlDataReader bd()
		{
			
			SqlConnection conn = new SqlConnection(stringSql);
			SqlCommand comm = new SqlCommand();
			comm.Connection = conn;
			comm.CommandType = CommandType.Text;
			comm.CommandText = "Select id, nome, imagem from produto";

			try
			{
				conn.Open();
				return comm.ExecuteReader();
			}
			catch
			{
				return null;
			}
		}

		protected void Page_Load(object sender, EventArgs e)
		{
			SqlDataReader dr = bd();
			dr.Read();
			DataList1.DataSource = dr;
			DataList1.DataBind();
		}

Compartilhar este post


Link para o post
Compartilhar em outros sites

claro desta maneira ira funcionar tiagao, mas aconteceu q a img estava como byte no meu banco. Lendo por ai e tal vi que nao é uma boa salvar imagens no banco ai ja mudei tudo fui lendo aqui e la e funcionou, ficou lindo lindo velho,fico bem como eu queria mesmo e consegui antes de ver tua resposta em.. oiehaiosheioas. Vo da uma descansada agora..

 

Brigadao de coracao tiago e quinte!! oiehaiosioeas

 

 

Abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.