1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Ajuda em C# variaveis e IDs

Discussão em 'Programação' iniciada por Tarec0, 16 de Maio de 2007. (Respostas: 8; Visualizações: 1925)

  1. Bom dia, estou a fazer um projecto em ASP.NET com ligação a base de dados SQL para o final do curso 12º ano.

    O problema é o seguinte:

    Tenho na base de dados valores que vai de c1 a c200.

    No Page Load feito em C# tenho uma variavel "coo" que recebe um desses valores.

    Agora pretendia mandar esse valor (variável) para a célula correspondete da tabela, (as células da tabela já estão numeradas com IDs c1...c200), se pude-se controlar a variável como se faz em javascript, com o comando "getElementById".

    Não consigo fazer isso dá errro. Dis a variável 'string' não possui a propriedade 'Text'.

    coo = dr[0].ToString();
    coo.Text = coo;

    Aqui vai o codigo

    public void Page_load(object sender, EventArgs e)
    {

    SqlConnection cn = new SqlConnection(ConfigurationManager.ConnectionStrings ["bd2"].ToString()) ;

    string sqlpage = "SELECT * FROM Jogadores";
    System.Data.SqlClient.SqlCommand cmdsele = new System.Data.SqlClient.SqlCommand (sqlpage, cn);
    cn.Open();
    SqlDataReader dr = null;

    try
    {
    dr = cmdsele.ExecuteReader();
    string coo;

    while (dr.Read())
    {

    coo = dr[0].ToString();
    coo.Text = coo;
    }

    }
    catch {}
    }

    Todas as ajudas, nem que seja só uma dica mínima, será bem vinda.

    Cumps,
    Tareco
    [​IMG]
     
    Última edição: 16 de Maio de 2007
  2. SoundSurfer

    SoundSurfer Power Member

    Usa uma DataGrid ou GridView ... é mais fácil...

    Se não quiseres, tens que mostrar a tal tabela.
     
    Última edição: 16 de Maio de 2007
  3. Essas eu já sei :S :S cá vai a tabela em ASP só de c1...a c10 para dar um exemplo.

    <asp:Table ID="Table1" runat="server" Height="89px" Width="212px" BorderStyle="Solid" >
    <asp:TableFooterRow runat="server">
    <asp:TableCell ID="c1" Text="" runat="server"></asp:TableCell>
    <asp:TableCell ID="c2" Text="" runat="server"></asp:TableCell>
    <asp:TableCell ID="c3" Text="" runat="server"></asp:TableCell>
    <asp:TableCell ID="c4" Text="" runat="server"></asp:TableCell>
    <asp:TableCell ID="c5" Text="" runat="server"></asp:TableCell>
    </asp:TableFooterRow>
    <asp:TableFooterRow runat="server">
    <asp:TableCell ID="c6" Text="" runat="server"></asp:TableCell>
    <asp:TableCell ID="c7" Text="" runat="server"></asp:TableCell>
    <asp:TableCell ID="c8" Text="" runat="server"></asp:TableCell>
    <asp:TableCell ID="c9" Text="" runat="server"></asp:TableCell>
    <asp:TableCell ID="c10"Text="" runat="server"></asp:TableCell>
    </asp:TableFooterRow>
    </asp:Table>

    Está ai.

    Vejam lá se me deiam uma ajudinha já tou nisso a 2 dias :S....
     
  4. SoundSurfer

    SoundSurfer Power Member

    em vez dessa tabela, usa uma DataGrid :

    Código:
    
    <asp:DataGrid ID="Table1" runat="Server">
    <Columns>
                <asp:BoundColumn HeaderText="campo c1" DataField="c1" />
                <asp:BoundColumn HeaderText="campo c2" DataField="c2" />
                <asp:BoundColumn HeaderText="campo c3" DataField="c3" />
                <asp:BoundColumn HeaderText="campo c4" DataField="c4" />
    ...
    </asp:DataGrid>
    [B]
    no code behind:[/B]
    
    DataSet ds = new DataSet();
    SqlDataAdapter adapter = new SqlDataAdapter();
    
    System.Data.SqlClient.SqlCommand cmdsele = new System.Data.SqlClient.SqlCommand (sqlpage, cn);
    
    cn.Open();
    
    adapter.SelectCommand = cmdsele;
    DataSet dataSet = new DataSet();
    adapter.Fill(ds);
    
    cn.Close();
    
    Table1.DataSource = ds;
    Table1.DataBind();
    
    
    

    Vê se dá, não tenho aqui o Visual Studio para testar.
     
  5. Obrigado ;) mas como já disse já sei fazer esse datagrid ou uma gridview.
    Preciso mesmo fazer como referi em cima...porque cada célula dessa tabela vai representar um jogador e preciso visualiza-los a todos nesta mesma tabela.

    Tem mesmo que ser numa tabela para os utilizadores poderem ter uma perpectiva de onde todos estão.

    Resumindo o que quero fazer é ...

    variavel = "um_id_qualquer";
    variavel.Text = "nao_interesa";

    se souberem tanto em VB como C# digam qualquer coisa sff.


    vou dar um exemplo..

    string variavel="";

    variavel = "c1";

    variavel.Text = "nao_interesa";

    | <asp:TableCell ID="c1" Text="" runat="server"></asp:TableCell>
    V

    Não consigo fazer isto, atribuir a propriedade .Text a uma variavel com o nome de um ID existente.


    Obrigado pelas respostas ;) até fiquei contente :P mas gostava mesmo de resolver esse problema...

    Não sei se tem solução.....
     
    Última edição: 16 de Maio de 2007
  6. p3dro

    p3dro Power Member


    Não sei se percebi bem o teu problema, but here goes my 2 cents ...


    string variavel="";

    variavel = "c1";

    this.variavel.Text = "nao_interesa";

    Ou seja para usares as propriedades de um webcontrol, podes fazer uso do "this", como se estivesses a aceder a métodos/ atributos de uma class, visto que em asp.net as páginas são vistas como se de uma class se tratasse.
     
  7. SoundSurfer

    SoundSurfer Power Member

    então faz:

    Código:
    ((TableCell) Table1.FindControl("c1")).Text = "c1";
     
  8. Utilizando o 'this' ele dá erro.

    this.variavel.Text "nao_interesa";

    'ASP.default_aspx' does not contain a definition for 'variavel'

    Se utilizar (TableCell) Table1.FindControl(variavel).Text = "nao_interesa";

    Já DEUUU :P

    Já tinha exprimentado o findcontrol mas não sabia que levava era o id da tabela antes.

    Bem o que queria fazer era só atribuir um id de um objecto a uma variavel e pode-lo controlar atravez dessa variavel.

    Obrigadinho boa sorte ai para os programas.

    Podem fechar o Tópico.
     
    Última edição: 20 de Maio de 2007
  9. p3dro

    p3dro Power Member

    pois, então n tinha percebido bem o que querias, o que tinha percebido era que tinhas uma variável e um webcontrol com o mesmo nome e não conseguias aceder às propriedades do webcontrol :x2:
     

Partilhar esta Página