Ir para conteúdo
Fórum Script Brasil
  • 0

Consegui Por Link Na Grid, Mas......


Guest Como administrar um link do data

Pergunta

Guest Como administrar um link do data

então pessoal, se alguém puder me ajudar é o seguinte..

eu criei uma grid, nela vai o seguinte codigo...

public void Conecetar_db()
  {//conexao com o banco de dados e a pesquisa da tabela estrutura
  	OdbcConnection Conexao = new OdbcConnection("Driver={Microsoft Access Driver (*.mdb)};DBQ=C:\\Inetpub\\wwwroot\\teste_marcelo_1\\db\\dados.mdb;UID=;PWD=;");
    
  	string resSQL = "select titulo from estrutura";

  	OdbcDataAdapter da = new OdbcDataAdapter(resSQL,Conexao);

  	DataSet ds = new DataSet();
  
  	da.Fill(ds,"estrutura");

  	Conexao.Close();
  	

  	dg_index.DataSource = ds.Tables["estrutura"].DefaultView;
  	dg_index.DataBind();
  	
  }
no form load...
private void Page_Load(object sender, System.EventArgs e)
  {
  	this.Conecetar_db();
  }
com esses codigos aparecem 2 registros que tenho cadastrado na minha tabela "estrutura", até ai tudo bem, depois entrei em Property Builder e em Columns, escolhi Hyperlink... no hyperlink escolhi esses dados...(Header Text:Dados da Tabela Estrutura; URL field: estrutura; Text Field:estrutura) DAI no html vai automatico o codigo da grid...
<asp:datagrid id="dg_index" style="Z-INDEX: 101; LEFT: 208px; TOP: 40px" runat="server" CellPadding="1"
    Height="136px" Width="205px" Font-Names="Arial" Font-Size="X-Small" BorderColor="#CCCCCC"
    BorderStyle="None" BorderWidth="1px" BackColor="White" GridLines="None">
    <SelectedItemStyle Font-Bold="True" ForeColor="White" BackColor="#669999"></SelectedItemStyle>
    <ItemStyle ForeColor="#000066"></ItemStyle>
    <HeaderStyle Font-Bold="True" ForeColor="White" BackColor="#006699"></HeaderStyle>
    <FooterStyle ForeColor="#000066" BackColor="White"></FooterStyle>
    <Columns>
    	<asp:HyperLinkColumn DataNavigateUrlField="estrutura" DataTextField="estrutura" HeaderText="Dados da Tabela Estrutura"></asp:HyperLinkColumn>
    </Columns>
    <PagerStyle HorizontalAlign="Left" ForeColor="#000066" BackColor="White" Mode="NumericPages"></PagerStyle>
  	</asp:datagrid>

dai eu coloquei um AutoGenerateColumns="False" no datagrid html certo? pra não criar automatico as colunas, isso é para eu controlar tudo....

GALERA ta funcionando td bem, mais eu quero fazer o que...

quando eu clicar no link, ele tem q pegar o que ta escrito no link e buscar em outra tabela todos os registros q contem essa string do link entenderam?

seria tipo assim...

selecione todos da tabela brasil onde o campo nome seja igual a string do link

entenderam?

seria fazer uma pesquisa numa tabela usando a string do link !!!

e onde q eu coloco isso entenderam, eu n sei fazer com que esses links busquem outros dados de uma outra tabela... se alguém entendeu, alguém poderia me ajudar? obrigado...... me mostrem exemplos... codigos se n for pedir mt... obrigado...

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Experimente o código abaixo no evento Load da página (coloque apenas uma DataGrid chamada "DataGrid1" na página):

  	DataTable dt = new DataTable();
  	dt.Columns.AddRange(new DataColumn[] {new DataColumn("Código", Type.GetType("System.Int32")), new DataColumn("Nome", Type.GetType("System.String"))});
  	dt.Rows.Add(new object[] {1, "Junior"});
  	dt.Rows.Add(new object[] {2, "Graymalkin"});
  	dt.Rows.Add(new object[] {3, "TMax"});
              dt.Rows.Add(new object[] {4, "Ramon"});

  	HyperLinkColumn col1 = new HyperLinkColumn();
  	HyperLinkColumn col2 = new HyperLinkColumn();
  	col1.DataNavigateUrlField = "Código";
  	col1.DataTextField = "Código";
  	col1.DataNavigateUrlFormatString = "procura.aspx?Código={0}";
  	col2.DataNavigateUrlField = "Nome";
  	col2.DataTextField = "Nome";
  	col2.DataNavigateUrlFormatString = "procura.aspx?Nome={0}";
  	
  	col1.HeaderText = "Código:";
  	col2.HeaderText = "Nome:";

  	DataGrid1.Columns.Add(col1);
  	DataGrid1.Columns.Add(col2);

  	DataGrid1.AutoGenerateColumns = false;
  	DataGrid1.DataSource = dt;
  	DataGrid1.DataBind();

Note que "dt" é uma DataTable que gerei ali na hora, mas poderia ser a sua DataTable oriunda da query. E observe que cada item da DataGrid ficará com um link apontando para uma página chamada "procura.aspx" e passando o nome do campo e o valor a ser procurado como parâmetros.

Certo? wink.gif

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0
Experimente o código abaixo no evento Load da página (coloque apenas uma DataGrid chamada "DataGrid1" na página):

  	DataTable dt = new DataTable();
  	dt.Columns.AddRange(new DataColumn[] {new DataColumn("Código", Type.GetType("System.Int32")), new DataColumn("Nome", Type.GetType("System.String"))});
  	dt.Rows.Add(new object[] {1, "Junior"});
  	dt.Rows.Add(new object[] {2, "Graymalkin"});
  	dt.Rows.Add(new object[] {3, "TMax"});
              dt.Rows.Add(new object[] {4, "Ramon"});

  	HyperLinkColumn col1 = new HyperLinkColumn();
  	HyperLinkColumn col2 = new HyperLinkColumn();
  	col1.DataNavigateUrlField = "Código";
  	col1.DataTextField = "Código";
  	col1.DataNavigateUrlFormatString = "procura.aspx?Código={0}";
  	col2.DataNavigateUrlField = "Nome";
  	col2.DataTextField = "Nome";
  	col2.DataNavigateUrlFormatString = "procura.aspx?Nome={0}";
  	
  	col1.HeaderText = "Código:";
  	col2.HeaderText = "Nome:";

  	DataGrid1.Columns.Add(col1);
  	DataGrid1.Columns.Add(col2);

  	DataGrid1.AutoGenerateColumns = false;
  	DataGrid1.DataSource = dt;
  	DataGrid1.DataBind();

Note que "dt" é uma DataTable que gerei ali na hora, mas poderia ser a sua DataTable oriunda da query. E observe que cada item da DataGrid ficará com um link apontando para uma página chamada "procura.aspx" e passando o nome do campo e o valor a ser procurado como parâmetros.

Certo? wink.gif

Graymalkin

ae graymalkin, deu certo sim cara, valeu mesmo em !!! eu fiz esse seu exemplo e rodo q é uma beleza, é isso q eu quero mesmo, dai em vez de eu criar ai os nomes e codigos, eu busquei da tabela o que eu queria, deu certo sim cara, valeu em !!!!!

só uma duvida..rsrs...

essa pagina "procura.aspx" .... q tipo de codigo eu tenho q fazer no load dela, porque eu receebi uma variavel de parametro lembra...

como eu faco pra usa essa variavel, você pode me dar um exemplo nem que seja idiota, mais só para eu ter uma nocao como q faz no c#, porque n sei !! valeu em !!! fui...

Link para o comentário
Compartilhar em outros sites

  • 0

essa pagina "procura.aspx" .... q tipo de codigo eu tenho q fazer no load dela, porque eu receebi uma variavel de parametro lembra...

como eu faco pra usa essa variavel, você pode me dar um exemplo nem que seja idiota, mais só para eu ter uma nocao como q faz no c#, porque n sei !! valeu em !!! fui...

Segue aí um exemplo simples (coloque-o no evento Page_Load do procura.aspx):

  	foreach (string campo in this.Request.QueryString) 
  	{
    Response.Write(String.Format("Você fez uma busca pelo campo <b>{0}</b> com o valor <i>'{1}'</i>", campo, Request.QueryString[campo]));
  	}

Certo? wink.gif

Graymalkin

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...