2011-10-10 2 views
0

J'ai un formulaire, l'utilisateur se connecte et un autre formulaire est généré.identifiants sous forme de base visuelle

L'utilisateur soumet une requête. Mon problème est que je ne peux pas garder une trace de qui fait la requête.

L'utilisateur a un uid et un usernamae mais une fois que le nouveau formulaire est généré où l'utilisateur soumet la requête, ces deux identifiants ont disparu.

Y a-t-il un moyen de surmonter cela? Merci

+0

Que voulez-vous dire, "ils sont partis"? Hors champ? –

+0

Je veux dire que dans mon code pour la deuxième forme c'est une nouvelle classe et je ne sais pas comment les trouver? est-il un moyen que je peux toujours utiliser le nom d'utilisateur ou uid? – user765942

Répondre

2

Si vous stockez vos UID seulement dans le formulaire initial, vous devrez transmettre ces valeurs au nouveau formulaire. En gros, vous pouvez ajuster vos champs champs et stocker votre valeur dans un endroit accessible par les deux formes, les passer dans un constructeur (et stocker en conséquence), ou fournir un accesseur dans votre nouveau formulaire pour passer à travers les valeurs que vous avoir besoin.

Pour répondre à votre question sur le constructeur:

Votre code ressemble actuellement probablement comme ce qui suit:

Dim form2 as New Form2() 
form2.Show() 

Vous devez modifier le constructeur de la seconde forme tels que:

Public Sub New() ... 

... devrait devenir ...

Public Sub New(ByVal userId As String, ByVal userName As String) ... 

Et puis passer à vos valeurs de la première forme (où userId et userName sont des champs stocker les valeurs de Form1):

Dim form2 as New Form2(userId, userName) 
form2.Show() 

Ensuite, vous pouvez les stocker dans le contexte global de votre deuxième forme.

+0

question stupide mais comment puis-je les passer dans un constructeur? Y at-il des liens ou des tutoriels sur la façon de faire cela? Merci – user765942

+0

@ user765942 Voir la mise à jour. Apoliogize pour toutes les ommissions de mots clés, car VB.NET n'est pas ma langue principale. –

+0

Merci George, j'apprécie – user765942

0

C'est ainsi que j'ai apporté la valeur dans une nouvelle forme. On dirait une solution facile, ne se rendait pas compte que c'était si simple!

Dim val As String = CStr (Form1.ComboBox1.SelectedValue)

Questions connexes