2ff390d577
- Primo commit.
121 lines
6.6 KiB
VB.net
121 lines
6.6 KiB
VB.net
#If _MyType <> "Empty" Then
|
|
|
|
Namespace My
|
|
''' <summary>
|
|
''' Modulo utilizzato per definire le proprietà disponibili nello spazio dei nomi My per WPF
|
|
''' </summary>
|
|
''' <remarks></remarks>
|
|
<Global.Microsoft.VisualBasic.HideModuleName()>
|
|
Module MyWpfExtension
|
|
Private s_Computer As New ThreadSafeObjectProvider(Of Global.Microsoft.VisualBasic.Devices.Computer)
|
|
Private s_User As New ThreadSafeObjectProvider(Of Global.Microsoft.VisualBasic.ApplicationServices.User)
|
|
Private s_Windows As New ThreadSafeObjectProvider(Of MyWindows)
|
|
Private s_Log As New ThreadSafeObjectProvider(Of Global.Microsoft.VisualBasic.Logging.Log)
|
|
''' <summary>
|
|
''' Restituisce l'oggetto applicazione per l'applicazione in esecuzione
|
|
''' </summary>
|
|
<Global.System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")>
|
|
Friend ReadOnly Property Application() As Application
|
|
Get
|
|
Return CType(Global.System.Windows.Application.Current, Application)
|
|
End Get
|
|
End Property
|
|
''' <summary>
|
|
''' Restituisce le informazioni sul computer host.
|
|
''' </summary>
|
|
<Global.System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")>
|
|
Friend ReadOnly Property Computer() As Global.Microsoft.VisualBasic.Devices.Computer
|
|
Get
|
|
Return s_Computer.GetInstance()
|
|
End Get
|
|
End Property
|
|
''' <summary>
|
|
''' Restituisce le informazioni per l'utente corrente. Se si desidera eseguire l'applicazione con le
|
|
''' credenziali utente di Windows correnti, chiamare My.User.InitializeWithWindowsUser().
|
|
''' </summary>
|
|
<Global.System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")>
|
|
Friend ReadOnly Property User() As Global.Microsoft.VisualBasic.ApplicationServices.User
|
|
Get
|
|
Return s_User.GetInstance()
|
|
End Get
|
|
End Property
|
|
''' <summary>
|
|
''' Restituisce il registro applicazioni. I listener possono essere configurati dal file di configurazione dell'applicazione.
|
|
''' </summary>
|
|
<Global.System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")>
|
|
Friend ReadOnly Property Log() As Global.Microsoft.VisualBasic.Logging.Log
|
|
Get
|
|
Return s_Log.GetInstance()
|
|
End Get
|
|
End Property
|
|
|
|
''' <summary>
|
|
''' Restituisce la raccolta di oggetti Window definiti nel progetto.
|
|
''' </summary>
|
|
<Global.System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")>
|
|
Friend ReadOnly Property Windows() As MyWindows
|
|
<Global.System.Diagnostics.DebuggerHidden()>
|
|
Get
|
|
Return s_Windows.GetInstance()
|
|
End Get
|
|
End Property
|
|
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Never)>
|
|
<Global.Microsoft.VisualBasic.MyGroupCollection("System.Windows.Window", "Create__Instance__", "Dispose__Instance__", "My.MyWpfExtenstionModule.Windows")>
|
|
Friend NotInheritable Class MyWindows
|
|
<Global.System.Diagnostics.DebuggerHidden()>
|
|
Private Shared Function Create__Instance__(Of T As {New, Global.System.Windows.Window})(ByVal Instance As T) As T
|
|
If Instance Is Nothing Then
|
|
If s_WindowBeingCreated IsNot Nothing Then
|
|
If s_WindowBeingCreated.ContainsKey(GetType(T)) = True Then
|
|
Throw New Global.System.InvalidOperationException("The window cannot be accessed via My.Windows from the Window constructor.")
|
|
End If
|
|
Else
|
|
s_WindowBeingCreated = New Global.System.Collections.Hashtable()
|
|
End If
|
|
s_WindowBeingCreated.Add(GetType(T), Nothing)
|
|
Return New T()
|
|
s_WindowBeingCreated.Remove(GetType(T))
|
|
Else
|
|
Return Instance
|
|
End If
|
|
End Function
|
|
<Global.System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1822:MarkMembersAsStatic")>
|
|
<Global.System.Diagnostics.DebuggerHidden()>
|
|
Private Sub Dispose__Instance__(Of T As Global.System.Windows.Window)(ByRef instance As T)
|
|
instance = Nothing
|
|
End Sub
|
|
<Global.System.Diagnostics.DebuggerHidden()>
|
|
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Never)>
|
|
Public Sub New()
|
|
MyBase.New()
|
|
End Sub
|
|
<Global.System.ThreadStatic()> Private Shared s_WindowBeingCreated As Global.System.Collections.Hashtable
|
|
<Global.System.ComponentModel.EditorBrowsable(Global.System.ComponentModel.EditorBrowsableState.Never)> Public Overrides Function Equals(ByVal o As Object) As Boolean
|
|
Return MyBase.Equals(o)
|
|
End Function
|
|
<Global.System.ComponentModel.EditorBrowsable(Global.System.ComponentModel.EditorBrowsableState.Never)> Public Overrides Function GetHashCode() As Integer
|
|
Return MyBase.GetHashCode
|
|
End Function
|
|
<Global.System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1822:MarkMembersAsStatic")>
|
|
<Global.System.ComponentModel.EditorBrowsable(Global.System.ComponentModel.EditorBrowsableState.Never)>
|
|
Friend Overloads Function [GetType]() As Global.System.Type
|
|
Return GetType(MyWindows)
|
|
End Function
|
|
<Global.System.ComponentModel.EditorBrowsable(Global.System.ComponentModel.EditorBrowsableState.Never)> Public Overrides Function ToString() As String
|
|
Return MyBase.ToString
|
|
End Function
|
|
End Class
|
|
End Module
|
|
End Namespace
|
|
Partial Class Application
|
|
Inherits Global.System.Windows.Application
|
|
<Global.System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")>
|
|
<Global.System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1822:MarkMembersAsStatic")>
|
|
Friend ReadOnly Property Info() As Global.Microsoft.VisualBasic.ApplicationServices.AssemblyInfo
|
|
<Global.System.Diagnostics.DebuggerHidden()>
|
|
Get
|
|
Return New Global.Microsoft.VisualBasic.ApplicationServices.AssemblyInfo(Global.System.Reflection.Assembly.GetExecutingAssembly())
|
|
End Get
|
|
End Property
|
|
End Class
|
|
#End If |