vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Erstellen von dynamischen Kontextmen?s - wann immer Sie sie brauchen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Re: Formular über seinen Namen (String) öffnen 
Autor: Maywood
Datum: 08.07.07 17:59

Versuchs mal damit:

// Code der Form1//
'
' Erstellt mit SharpDevelop.
' Benutzer: maywood
' Datum: 06.07.2007
' Zeit: 14:26
' 
' Sie können diese Vorlage unter Extras > Optionen > Codeerstellung > 
' Standardheader ändern.
'
Public Partial Class Form1
 
	Private Shared instances As Integer 
    Private Shared currentInstance As Form
 
    Public Sub New()
        Me.InitializeComponent()
        instances += 1
        currentInstance = Me
    End Sub
 
	Protected Overrides Sub Dispose(ByVal disposing As Boolean)
		If disposing Then
			If components IsNot Nothing Then
				components.Dispose()
			End If
		End If
        instances -= 1
        currentInstance = Nothing
		MyBase.Dispose(disposing)
	End Sub
 
    Public Shared Function GetCurrentInstance() As Form
        Return currentInstance
    End Function
 
    Public Shared Function GetInstancesCount() As Integer
        Return instances
    End Function
 
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles Button1.Click
        Me.Visible = Not Me.Visible
    End Sub
End Class
// Aufruf //
	Sub Button2Click(ByVal sender As Object, ByVal e As EventArgs)
		  Dim t As Type = Type.GetType("ReflectionsTest1.Form1")
        Dim f As Form = Nothing
        Dim instances As Integer = CInt(t.InvokeMember("GetInstancesCount", _
          BindingFlags.InvokeMethod, _
                Nothing, Nothing, New Object() {}))
        Debug.WriteLine("Instances: " + instances.ToString())
        If (instances < 1) Then
            Debug.WriteLine("Create a new instance.")
            f = CType(System.Reflection.Assembly.GetExecutingAssembly( _
              ).CreateInstance("ReflectionsTest1.Form1"), Form)
        Else
            Debug.WriteLine("Use the existing instance.")
            f = CType(t.InvokeMember("GetCurrentInstance", _
              BindingFlags.InvokeMethod, Nothing, Nothing, New Object() {}), _
              Form)
        End If
        f.Show()
    End Sub
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Formular über seinen Namen (String) öffnen1.501Schoppen06.07.07 11:21
Re: Formular über seinen Namen (String) öffnen855Maywood06.07.07 12:15
Re: Formular über seinen Namen (String) öffnen956Schoppen06.07.07 12:31
Re: Formular über seinen Namen (String) öffnen843Schoppen06.07.07 13:46
Re: Formular über seinen Namen (String) öffnen1.088Maywood06.07.07 15:45
Re: Formular über seinen Namen (String) öffnen822Schoppen06.07.07 16:30
Re: Formular über seinen Namen (String) öffnen782Maywood06.07.07 16:37
Re: Formular über seinen Namen (String) öffnen746Schoppen06.07.07 16:56
Re: Formular über seinen Namen (String) öffnen746Schoppen06.07.07 17:28
Re: Formular über seinen Namen (String) öffnen904Schoppen08.07.07 14:41
Re: Formular über seinen Namen (String) öffnen817Maywood08.07.07 17:59
Re: Formular über seinen Namen (String) öffnen799Schoppen08.07.07 18:54

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel