Problemas con Labels y cadenas en C#

Iniciado por dark_headhunter, 1 Diciembre 2010, 20:32 PM

0 Miembros y 1 Visitante están viendo este tema.

.::IT::.

Completamente de acuerdo con Siuto. aqui un ejemplo probado

Código (csharp) [Seleccionar]
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace TestLabel
{
    public partial class FrmMain : Form
    {
        List<Label> myListLabel;

        public FrmMain()
        {
            InitializeComponent();

            myListLabel = new List<Label>();
            myListLabel.Add(this.P1);
            myListLabel.Add(this.P2);
            myListLabel.Add(this.P3);
            myListLabel.Add(this.P4);
            myListLabel.Add(this.P5);
            myListLabel.Add(this.P6);
            myListLabel.Add(this.P7);
            myListLabel.Add(this.P8);
            myListLabel.Add(this.P9);
            myListLabel.Add(this.P10);

            CaptionLabels();
        }

        private void CaptionLabels()
        {
            int i = 1;
            foreach (Label myLabel in myListLabel)
            {
                if (myLabel.Name == "P" + i)
                    myLabel.Text = i.ToString();//aqui le asignamos el nombre que queremos

                i++;//aumentamos en una unidad
            }
        }
    }
Simplemente .::IT::.

raul338

Tuviste un error de sintaxis

"" + B.cadena = aux.Text;
// No es lo mismo que
aux.Text = B.cadena;


la asignacion siempre se hace de izquierda a derecha, nunca al revez.
Segundo, no puedes hacer casting directo entre una esctructura a un objeto nativo. Aca te pongo este code que es lo que necesitas.
Código (csharp) [Seleccionar]

aux = raiz + union; // Obtengo el nombre, ej aux = "P1"; // siendo P1 un label
Control cAux = this.Controls[aux]; // obtengo el control, el nombre viene de controlAux
cAux.Text = B.cadena; // Le asigno el texto


Espero que te sirva!

Edu

Si leen bien lo q comento al principio de todo todo, parece q solo pide crear un array de labels, para hacer P(0) , P(1) etc xD
Se fueron lejos si tengo razon xD pero no creo.