Ayuda con controles dinamicos

Moderador: raul338

C#, tambien llamado C Sharp

Ayuda con controles dinamicos

Notapor Kanonshade » Jue Nov 27, 2008 10:31 pm

Que tal como estan todos, queria hacerles una consulta acerca de este problema que tengo. Tengo que realizar un proyecto en .net c# que mas o menos va asi:
Tengo que crear un array de 10*10 de cualquier boton que pueda para cambiarle el Backcolor, asi como para hacer una malla. Entonces a cada de estos controles tengo que asignarles un color aleatorio. Esto lo hago mas o menos asi verdad(Ejemplo con pictureboxes).
Código: Seleccionar todo
  1. int x = 5;

  2.             int y = 10;

  3.             List<System.Windows.Forms.PictureBox> objeto = new List<PictureBox>();

  4.             for (int i = 0; i < 10; i++, x += 10)

  5.             {

  6.                 PictureBox cuadro = new PictureBox();

  7.                 cuadro.Width = 5;

  8.                 cuadro.Height = 5;

  9.                 cuadro.Location = new System.Drawing.Point(x, y);

  10.                 objeto.Add(cuadro);

  11.                 cuadro.BackColor = Color.Yellow;

  12.             }

  13.             foreach (System.Windows.Forms.PictureBox imagen in objeto)

  14.                 this.Controls.Add(imagen);


Ahora ademas del problema de colores aleatorios, debo poder a traves de un timer cambiar el color de uno de estos cuadros(escogido aleatoriamente) por uno que yo elija.
Para poder escoger aleatoriamente un control pense en la lista para poder asi manipularlos con mas facilidad. Por ejemplo:
objeto[aleatorio].BackColor=Color.red;
Pero como hago para que los controles del form se actualizen a partir de la lista? Es posible hacerlo?.
No se si se entendio bien o sino haganmelo saberlo para tratar de explicarlo mejor.
Cualquier ayuda u otras ideas se los agradeceria muchisimo.
Saludos.
Kanonshade
Novato
Novato
 
Mensajes: 1
Registrado: Jue Nov 27, 2008 9:58 pm


Re: Ayuda con controles dinamicos

Notapor raul338 » Vie Dic 26, 2008 6:34 am

usa otro metodo para cambiarles el color. Yo tuve un problema parecido pero tenia que hacer con textbox para hacer un juego parecido al "tres en raya" (o ta te ti como lo llaman aca)

Ponle un nombre a cada control: que sea el mismo mas un numero que lo identifique. (Ej: boton1, boton2, boton3, etc)

y luego llamas al controlo con FindControl
ej:

Código: Seleccionar todo
  1. Button BotonACambiar = this.Controls.Find("boton1", False);

  2. BotonACambiar.BackColor = Color.Yellow




espero que te sirva!!!
[img]http://i54.tinypic.com/102peue.jpg[/img]
Avatar de Usuario
raul338
Colaborador
Colaborador
 
Mensajes: 132
Registrado: Mar May 31, 2005 1:44 pm
Ubicación: Buenos Aires



    

Volver a C#

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados