Foros del Web » Programación para mayores de 30 ;) » .NET »

leer y asignar valor a una variable publica en un form

Estas en el tema de leer y asignar valor a una variable publica en un form en el foro de .NET en Foros del Web. Quiero leer y actualizar el valor de una varible publica en un formulario mi codigo es el siguiente codigo en el formulario: Public Class Form1 ...
  #1 (permalink)  
Antiguo 04/10/2012, 04:13
 
Fecha de Ingreso: octubre-2012
Mensajes: 1
Antigüedad: 11 años, 6 meses
Puntos: 0
leer y asignar valor a una variable publica en un form

Quiero leer y actualizar el valor de una varible publica en un formulario
mi codigo es el siguiente


codigo en el formulario:

Public Class Form1
Public Accion As String

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
PrepararFormulario(Me)
'desde aqui llamo al procedimiento pasandole como parametro el formulario actual
End Sub
End Class

Codigo en el modulo:

Public Sub PrepararFormulario(ByVal Frm As Form)
Dim Left As Integer = 0
Dim Top As Integer = 0
Frm.Location = New Point(Top, Left)
'Esto tampoco funciona, cada vez que abro el formulario, lo va desplazando

Frm.accion = "NINGUNA"
'aqui da un error
'accion' no es un miembro de 'System.Windows.Forms.Form'.
End Sub

Public Sub RevisarFormulario(ByVal Frm As Form)
If Frm.accion = "NINGUNA" Then
'mismo error
'accion' no es un miembro de 'System.Windows.Forms.Form'.

End If
End Sub

La idea es hacer un procedimiento que sirva para todos los formularios
en la llamada, solo le paso el formulario

PrepararFormulario(Me)

si en vez de
Frm.accion = "NINGUNA"
pongo
Form1.Accion = "NINGUNA"
eso funciona

pero claro, yo no se cual de todos los formularios ha llamdo al procedimiento

Espero haberme explicado bien
  #2 (permalink)  
Antiguo 04/10/2012, 06:20
Avatar de angel1993  
Fecha de Ingreso: octubre-2009
Mensajes: 752
Antigüedad: 14 años, 6 meses
Puntos: 22
Respuesta: leer y asignar valor a una variable publica en un form

Todos los Form heredan System.Windows.Forms.Form no ves la herencia por que se herda en el diseñador en "form1.Designrer.vb" verás que hay una clase partial "Partial class Form1", "Partial" se usa para dividir una clase en varias...
Lo que tienes que hacer sería heredar system.windows.forms.form en una clase tuya, llamada por ejemplo "MiForm" y luego en vez de heredar "System.Windows.Forms.Form" heredas tu clase, y en el byval de la funcion te quedaría así "Public Sub PrepararFormulario(ByVal Frm As MiForm)"


Sería algo así
Código vb:
Ver original
  1. Public Class MiForm
  2.     Inherits System.Windows.Forms.Form
  3.     Public Accion As String
  4. End Class
  5.  
  6.  
  7. 'En Form1.Designrer.vb
  8. <Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
  9. Partial Class F
  10.     Inherits MiForm
  11. ...



La otra opción sería en la función "RevisarFormulario" poner el byval como object y hacer un enlace en tiempo de ejecucción, pero bueno ya preferiría heredar..


Si tienes duda pregunta
__________________
@angelxab Twiiter

Etiquetas: windows, variables, formulario
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:39.