naskar

naskar

  • NA
  • 2
  • 0

Encapsulamiento

May 4 2005 11:54 AM
Buenas, mi duda es la siguiente: Tengo una clase A en la que creo un objeto de clase B, y en B creo otro de tipo C. Resulta que en B tengo varios controles (combobox, textbox etc) y me gustaria poder averiguar su contenido desde el objeto tipo C. Hasta ahora la unica solucion que se me ha ocurrido es declararel objeto B como atributo de A como public static, pero no se si esta forma es demasiado "cutre". Os pongo algo del código a ver si me podeis dar ideas: public class A : System.Windows.Forms.Form { public static B inDatos; ... private void menuItem1_Click(object sender, System.EventArgs e) { this.Hide(); inDatos = new B(); inDatos.ShowDialog(this); this.Show(); } } public class B : System.Windows.Forms.Form { //iniciacion de todos los controles ... private void button1_Click(object sender, System.EventArgs e) { C inConf = new C(); if(inConf.ShowDialog(this)==DialogResult.OK) Close(); } } public class C : System.Windows.Forms.Form { ... private void C_Load(object sender,System.EventArgs e) { //getDato() me devuelve lo que haya seleccionado //en el combobox this.label1.Text=A.inDatos.getDato(); } } Supongo que mi pregunta se puede resumir a como acceder desde un objeto B a miembros de un objeto A... Muchas gracias y un saludo ;)