2016-06-29 11 views
0

私はフォームのためのfolowingコードを持っています。完全に、私はどのような形でビジュアルを知っていますか?

ListBox1.DataSource = tab.formaciones 

そして、それは動作します:私はformacionesリストをしたいので、私はちょうどすることができます別のフォームで

Public Class tab 
    Public personas, formaciones, avisos, cursos As List(Of Object) 
    [Lots of Code] 
End class 

しかしどのように?

tabはクラスでありインスタンスではありませんが、vbはそのクラスのインスタンスが必要であることを理解できます。

morがtabより開いているとどうなりますか?それは内部的にどのように機能しますか?

+2

あなたは[これを読む]可能性があり(http://stackoverflow.com/質問/ 4698538/what-is-there-a-default-instance-of-every-form-in-vb-net-but-not-c)を使用します。 VBはあなたのために各フォームのインスタンスを作成する、それはそれが動作する理由です。しかし、複数のフォームがある場合は、どのインスタンスを使用するかを指定する必要があります。 –

+0

@ThorstenDittmar実際には、VBは各フォームのインスタンスを "オンザフライ"で作成します。 –

+0

@the_lotus可能な限りVBから遠ざかり、最初に適切な言語を学ぶもう一つの理由...とにかく:この例では、 'tab'はフォームではありませんか? –

答えて

1

これは、VB.NET WinFormsアプリケーションを作成するときに有効にされるデフォルトアプリケーションフレームワークの一部です。

その目的は、VB6からの移行を支援することで、各フォームのシングルトンを作成することでした。

異なるインスタンスが必要な場合は、フレームワークを無効/無視して独自の起動メソッドを作成できます。

詳細:

シングルトンフォーム:https://msdn.microsoft.com/en-us/library/ms233839.aspx

の有効化/無効化:https://msdn.microsoft.com/en-us/library/17k74w0c(v=vs.100).aspx

記事本文:https://visualstudiomagazine.com/articles/2007/10/01/enable-the-application-framework-in-vb.aspx

関連する問題