SoloCodigo

CLR: .Net / Mono / Boo / Otros CLR => C# => Mensaje iniciado por: fbautista en Viernes 5 de Julio de 2013, 20:58

Título: Problema Con Propiedad Active Form.Text En C#
Publicado por: fbautista en Viernes 5 de Julio de 2013, 20:58
Hola buenas tardes Alguien Podria ayudarme con este tema:

Bien Tengo una aplicacion  en C# al cual yo le Mando el Titulo que quiero que tenga mi formulario, atravez de Parametros desde un ShortCut,  estos parametros los resibe un arreglo en el constructor de mi formulario, el detalle es el siguiente Aveces Si pone el titulo que yo le mando y aveces no .....   Alguien podria decirme a que se debe  esto...  ?   :ayuda:
Título: Re:Problema Con Propiedad Active Form.Text En C#
Publicado por: TheGrimm en Domingo 7 de Julio de 2013, 01:32
 :angel: Seria interesante ver una parte de tu código así poder determinar el problema. saludos
Título: Re:Problema Con Propiedad Active Form.Text En C#
Publicado por: fbautista en Lunes 8 de Julio de 2013, 18:47
Ok gracias ... Mira Esta Es Un fragmento de Mi Codigo....

//Metodo Donde Recibo Argumentos

public Form1(string []args){
      _Left = Convert.ToInt32(args[0]);
      _Top = Convert.ToInt32(args[1]);
      _Title = args[2];
_Descrip = args[3];     
InitializeComponent(); 

                       
}


//Metodo Donde Utilizo los Argumentos.

 private void Form1_Load(object sender, EventArgs e)
        {
           
                Form1.ActiveForm.Text = _Title;

                if (_Left != -1) Form1.ActiveForm.Left = _Left;

                if (_Top != -1) Form1.ActiveForm.Top = _Top;

           

        }

Título: Re:Problema Con Propiedad Active Form.Text En C#
Publicado por: ProfesorX en Lunes 8 de Julio de 2013, 22:55
A mi me parece que la manera en que utilizas los argumentos (args), es incorrecta, porque que pasa si pones los argumentos en un orden diferente, es decir que pusieras el titulo primero, y luego las coordenadas, o que pusieras primero una coordenada luego el titulo, y luego otra coordenada.

Ademas cuando pasas el titulo, necesitas pasarlo entre comillas, porque si lo pasas sin comillas, te toma los espacios en blanco como separadores, haciendo que cada palabra sea un valor diferentes. Ejemplo:

Si pones:

Este es un titulo

tu variable args quedaria asi:

args[0] = "Este"
args[1] = "es"
args[2] = "un"
args[3] = "titulo"

en cambio si pones
"Este es un titulo"

quedaria
args[0] = "Este es un titulo"

Entonces a mi parecer necesitas validar args, para que tenga el valor correcto, no se si me di a antender.

Ademas no se porque utilizas ActiveForm, cuando puedes ponerle directamente el Titulo directamente sin necesidad de eso.

Bueno, eso es lo que yo veo.

Saludos :)
Título: Re:Problema Con Propiedad Active Form.Text En C#
Publicado por: fbautista en Martes 9 de Julio de 2013, 00:26
hola  gracias por responder, bueno lo que me comentas del orden de los parametros bueno la realidad es que  e tenido problemas tanto con el titulo como con las cordenadas, inicialmente solo tenia las cordenadas pero despues tube que implementar el titulo. Tambien lo de Las comillas es algo que estoy tomando en cuenta cuando le mando los parametros. 

Ejemplo:

"C:\Users\Hector\Aplicacion.Exe" "200" "250" "Video"

Esta es la forma en la cual le mando los parametros atravez de shortcut

El  por que utilizo  Form1.ActiveForm.Text  o Form1.ActiveForm.Left  en lugar de hacerlo directamente es por que otra aplicacion requiere que mi aplicacion tenga una posicion dinamica y un titulo dinamico, ya que este ejecutable puede estarse ejcutando varias veces a la vez con posiciones diferentes y titulos diferentes.   :yes: