From 667bed9051cf26250312ecca8aeefe39bcb15a3d Mon Sep 17 00:00:00 2001
From: Andreas Sauer <18749753+Hanibal1963@users.noreply.github.com>
Date: Sat, 12 Oct 2024 10:19:52 +0200
Subject: [PATCH] =?UTF-8?q?Lokale=20Kopien=20von=20ProvideToolboxControlAt?=
=?UTF-8?q?tribute.vb=20hinzugef=C3=BCgt?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Verweise auf ProvideToolboxControlAttribute.vb in den Projektdateien
AniGifControl.vbproj, DriveWatcherControl.vbproj, IniFileControl.vbproj,
NotifyFormControl.vbproj, SevenSegmentControl.vbproj, ShapeControl.vbproj,
TransparentLabelControl.vbproj und WizardControl.vbproj von einem
gemeinsamen Speicherort entfernt und durch lokale Kopien ersetzt.
Neue Diagrammdateien (.cd) wurden zu den Projektdateien hinzugefügt.
In ProvideToolboxControlAttribute.vb wurden umfangreiche Änderungen
vorgenommen, einschließlich der Implementierung der Klasse
ProvideToolboxControlAttribute und der Hinzufügung von Kommentaren.
Verweise auf ProvideToolboxControlAttribute.vb aus dem CommonCodes-Projekt
in SchlumpfSoft Controls.sln entfernt.
Nicht mehr benötigte Verweise auf Dokumentationsdateien (.md) in den
Projektdateien ShapeControl.vbproj, TransparentLabelControl.vbproj und
WizardControl.vbproj entfernt.
---
AniGifControl/AniGifControl.vbproj | 11 +-
.../ProvideToolboxControlAttribute.vb | 4 -
.../DriveWatcherControl.vbproj | 12 +-
.../ProvideToolboxControlAttribute.vb | 128 ++++++++++++++++++
IniFileControl/IniFileControl.vbproj | 8 +-
.../ProvideToolboxControlAttribute.vb | 128 ++++++++++++++++++
NotifyFormControl/NotifyFormControl.vbproj | 13 +-
.../ProvideToolboxControlAttribute.vb | 128 ++++++++++++++++++
SchlumpfSoft Controls.sln | 1 -
.../SchlumpfSoftControls.vbproj | 1 +
.../ProvideToolboxControlAttribute.vb | 128 ++++++++++++++++++
.../SevenSegmentControl.vbproj | 13 +-
.../ProvideToolboxControlAttribute.vb | 128 ++++++++++++++++++
ShapeControl/ShapeControl.vbproj | 12 +-
.../ProvideToolboxControlAttribute.vb | 128 ++++++++++++++++++
.../TransparentLabelControl.vbproj | 14 +-
.../ProvideToolboxControlAttribute.vb | 128 ++++++++++++++++++
WizardControl/WizardControl.vbproj | 26 ++--
18 files changed, 947 insertions(+), 64 deletions(-)
rename {CommonCodes => AniGifControl}/ProvideToolboxControlAttribute.vb (99%)
create mode 100644 DriveWatcherControl/ProvideToolboxControlAttribute.vb
create mode 100644 IniFileControl/ProvideToolboxControlAttribute.vb
create mode 100644 NotifyFormControl/ProvideToolboxControlAttribute.vb
create mode 100644 SevenSegmentControl/ProvideToolboxControlAttribute.vb
create mode 100644 ShapeControl/ProvideToolboxControlAttribute.vb
create mode 100644 TransparentLabelControl/ProvideToolboxControlAttribute.vb
create mode 100644 WizardControl/ProvideToolboxControlAttribute.vb
diff --git a/AniGifControl/AniGifControl.vbproj b/AniGifControl/AniGifControl.vbproj
index 4acc932..3d6c8fa 100644
--- a/AniGifControl/AniGifControl.vbproj
+++ b/AniGifControl/AniGifControl.vbproj
@@ -84,18 +84,14 @@
AniGifControl.xml
-
- AniGifControl.md
-
-
+
+
+
MyDescription.vb
-
- ProvideToolboxControlAttribute.vb
-
UserControl
@@ -105,6 +101,7 @@
True
Resources.resx
+
diff --git a/CommonCodes/ProvideToolboxControlAttribute.vb b/AniGifControl/ProvideToolboxControlAttribute.vb
similarity index 99%
rename from CommonCodes/ProvideToolboxControlAttribute.vb
rename to AniGifControl/ProvideToolboxControlAttribute.vb
index aa8facb..2a9b0ae 100644
--- a/CommonCodes/ProvideToolboxControlAttribute.vb
+++ b/AniGifControl/ProvideToolboxControlAttribute.vb
@@ -27,7 +27,6 @@ Imports Microsoft.VisualStudio.Shell
Public NotInheritable Class ProvideToolboxControlAttribute : Inherits RegistrationAttribute
Private Const ToolboxControlsInstallerPath As String = "ToolboxControlsInstaller"
-
Private _isWpfControls As Boolean
Private _name As String
@@ -42,7 +41,6 @@ Public NotInheritable Class ProvideToolboxControlAttribute : Inherits Registrati
If name Is Nothing Then
Throw New ArgumentException("name")
End If
-
Me.Name = name
Me.IsWpfControls = isWpfControls
@@ -86,7 +84,6 @@ Public NotInheritable Class ProvideToolboxControlAttribute : Inherits Registrati
If context Is Nothing Then
Throw New ArgumentNullException("context")
End If
-
Using key As Key = context.CreateKey(
String.Format(
CultureInfo.InvariantCulture,
@@ -96,7 +93,6 @@ Public NotInheritable Class ProvideToolboxControlAttribute : Inherits Registrati
key.SetValue(String.Empty, Me.Name)
key.SetValue("Codebase", context.CodeBase)
-
If Me.IsWpfControls Then
key.SetValue("WPFControls", "1")
End If
diff --git a/DriveWatcherControl/DriveWatcherControl.vbproj b/DriveWatcherControl/DriveWatcherControl.vbproj
index f21f35a..6258411 100644
--- a/DriveWatcherControl/DriveWatcherControl.vbproj
+++ b/DriveWatcherControl/DriveWatcherControl.vbproj
@@ -74,18 +74,15 @@
False
-
- DriveWatcherControl.md
-
-
+
+
+
+
MyDescription.vb
-
- ProvideToolboxControlAttribute.vb
-
@@ -97,6 +94,7 @@
True
Resources.resx
+
diff --git a/DriveWatcherControl/ProvideToolboxControlAttribute.vb b/DriveWatcherControl/ProvideToolboxControlAttribute.vb
new file mode 100644
index 0000000..2a9b0ae
--- /dev/null
+++ b/DriveWatcherControl/ProvideToolboxControlAttribute.vb
@@ -0,0 +1,128 @@
+' ****************************************************************************************************************
+' ProvideToolboxControlAttribute.vb
+' © 2024 by Andreas Sauer
+' ****************************************************************************************************************
+'
+
+Imports System
+Imports System.Collections.Generic
+Imports System.Globalization
+Imports System.Linq
+Imports System.Runtime.InteropServices
+Imports System.Text
+Imports Microsoft.VisualStudio.Shell
+
+'''
+''' Dieses Attribut fügt der Assembly einen Toolbox Controls Installer-Schlüssel hinzu,
+''' um Toolbox Controls aus der Assembly zu installieren.
+'''
+'''
+''' Zum Beispiel:
+''' [$(Rootkey)\ToolboxControlsInstaller\$FullAssemblyName$]
+''' "Codebase"="$path$"
+''' "WpfControls"="1"
+'''
+
+
+Public NotInheritable Class ProvideToolboxControlAttribute : Inherits RegistrationAttribute
+
+ Private Const ToolboxControlsInstallerPath As String = "ToolboxControlsInstaller"
+ Private _isWpfControls As Boolean
+ Private _name As String
+
+ '''
+ ''' Erstellt ein neues Attribut „Provide Toolbox Control“, um die Assembly für das
+ ''' Toolbox Controls-Installationsprogramm zu registrieren.
+ '''
+ '''
+ '''
+ Public Sub New(name As String, isWpfControls As Boolean)
+
+ If name Is Nothing Then
+ Throw New ArgumentException("name")
+ End If
+ Me.Name = name
+ Me.IsWpfControls = isWpfControls
+
+ End Sub
+
+ '''
+ ''' Ruft ab, ob die Toolbox-Steuerelemente für WPF gelten.
+ '''
+ Private Property IsWpfControls As Boolean
+ Get
+ Return Me._isWpfControls
+ End Get
+ Set(value As Boolean)
+ Me._isWpfControls = value
+ End Set
+ End Property
+
+ '''
+ ''' Ruft den Namen für die Steuerelemente ab.
+ '''
+ Private Property Name As String
+ Get
+ Return Me._name
+ End Get
+ Set(value As String)
+ Me._name = value
+ End Set
+ End Property
+
+ '''
+ ''' Wird aufgerufen, um dieses Attribut im angegebenen Kontext zu registrieren.
+ ''' Der Kontext enthält den Ort, an dem die Registrierungsinformationen
+ ''' platziert werden sollen.
+ ''' Es enthält auch andere Informationen wie den zu registrierenden Typ und Pfadinformationen.
+ '''
+ '''
+ ''' Vorgegebener Kontext für die Registrierung.
+ '''
+ Public Overrides Sub Register(context As RegistrationAttribute.RegistrationContext)
+
+ If context Is Nothing Then
+ Throw New ArgumentNullException("context")
+ End If
+ Using key As Key = context.CreateKey(
+ String.Format(
+ CultureInfo.InvariantCulture,
+ "{0}\{1}",
+ ToolboxControlsInstallerPath,
+ context.ComponentType.Assembly.FullName))
+
+ key.SetValue(String.Empty, Me.Name)
+ key.SetValue("Codebase", context.CodeBase)
+ If Me.IsWpfControls Then
+ key.SetValue("WPFControls", "1")
+ End If
+
+ End Using
+
+ End Sub
+
+ '''
+ ''' Wird aufgerufen, um die Registrierung dieses Attributs im angegebenen Kontext aufzuheben.
+ '''
+ '''
+ ''' Ein Registrierungskontext, der von einem externen Registrierungstool bereitgestellt wird.
+ ''' Der Kontext kann verwendet werden, um Registrierungsschlüssel zu entfernen,
+ ''' Registrierungsaktivitäten zu protokollieren und Informationen
+ ''' über die registrierte Komponente abzurufen.
+ '''
+ Public Overrides Sub Unregister(context As RegistrationAttribute.RegistrationContext)
+
+ If context IsNot Nothing Then
+
+ context.RemoveKey(
+ String.Format(
+ CultureInfo.InvariantCulture,
+ "{0}\{1}",
+ ToolboxControlsInstallerPath,
+ context.ComponentType.Assembly.FullName))
+
+ End If
+
+ End Sub
+
+End Class
\ No newline at end of file
diff --git a/IniFileControl/IniFileControl.vbproj b/IniFileControl/IniFileControl.vbproj
index 23ace7e..95b68fe 100644
--- a/IniFileControl/IniFileControl.vbproj
+++ b/IniFileControl/IniFileControl.vbproj
@@ -75,9 +75,7 @@
IniFileControl.xml
-
- IniFileControl.md
-
+
@@ -94,9 +92,6 @@
MyDescription.vb
-
- ProvideToolboxControlAttribute.vb
-
Component
@@ -151,6 +146,7 @@
True
Resources.resx
+
diff --git a/IniFileControl/ProvideToolboxControlAttribute.vb b/IniFileControl/ProvideToolboxControlAttribute.vb
new file mode 100644
index 0000000..2a9b0ae
--- /dev/null
+++ b/IniFileControl/ProvideToolboxControlAttribute.vb
@@ -0,0 +1,128 @@
+' ****************************************************************************************************************
+' ProvideToolboxControlAttribute.vb
+' © 2024 by Andreas Sauer
+' ****************************************************************************************************************
+'
+
+Imports System
+Imports System.Collections.Generic
+Imports System.Globalization
+Imports System.Linq
+Imports System.Runtime.InteropServices
+Imports System.Text
+Imports Microsoft.VisualStudio.Shell
+
+'''
+''' Dieses Attribut fügt der Assembly einen Toolbox Controls Installer-Schlüssel hinzu,
+''' um Toolbox Controls aus der Assembly zu installieren.
+'''
+'''
+''' Zum Beispiel:
+''' [$(Rootkey)\ToolboxControlsInstaller\$FullAssemblyName$]
+''' "Codebase"="$path$"
+''' "WpfControls"="1"
+'''
+
+
+Public NotInheritable Class ProvideToolboxControlAttribute : Inherits RegistrationAttribute
+
+ Private Const ToolboxControlsInstallerPath As String = "ToolboxControlsInstaller"
+ Private _isWpfControls As Boolean
+ Private _name As String
+
+ '''
+ ''' Erstellt ein neues Attribut „Provide Toolbox Control“, um die Assembly für das
+ ''' Toolbox Controls-Installationsprogramm zu registrieren.
+ '''
+ '''
+ '''
+ Public Sub New(name As String, isWpfControls As Boolean)
+
+ If name Is Nothing Then
+ Throw New ArgumentException("name")
+ End If
+ Me.Name = name
+ Me.IsWpfControls = isWpfControls
+
+ End Sub
+
+ '''
+ ''' Ruft ab, ob die Toolbox-Steuerelemente für WPF gelten.
+ '''
+ Private Property IsWpfControls As Boolean
+ Get
+ Return Me._isWpfControls
+ End Get
+ Set(value As Boolean)
+ Me._isWpfControls = value
+ End Set
+ End Property
+
+ '''
+ ''' Ruft den Namen für die Steuerelemente ab.
+ '''
+ Private Property Name As String
+ Get
+ Return Me._name
+ End Get
+ Set(value As String)
+ Me._name = value
+ End Set
+ End Property
+
+ '''
+ ''' Wird aufgerufen, um dieses Attribut im angegebenen Kontext zu registrieren.
+ ''' Der Kontext enthält den Ort, an dem die Registrierungsinformationen
+ ''' platziert werden sollen.
+ ''' Es enthält auch andere Informationen wie den zu registrierenden Typ und Pfadinformationen.
+ '''
+ '''
+ ''' Vorgegebener Kontext für die Registrierung.
+ '''
+ Public Overrides Sub Register(context As RegistrationAttribute.RegistrationContext)
+
+ If context Is Nothing Then
+ Throw New ArgumentNullException("context")
+ End If
+ Using key As Key = context.CreateKey(
+ String.Format(
+ CultureInfo.InvariantCulture,
+ "{0}\{1}",
+ ToolboxControlsInstallerPath,
+ context.ComponentType.Assembly.FullName))
+
+ key.SetValue(String.Empty, Me.Name)
+ key.SetValue("Codebase", context.CodeBase)
+ If Me.IsWpfControls Then
+ key.SetValue("WPFControls", "1")
+ End If
+
+ End Using
+
+ End Sub
+
+ '''
+ ''' Wird aufgerufen, um die Registrierung dieses Attributs im angegebenen Kontext aufzuheben.
+ '''
+ '''
+ ''' Ein Registrierungskontext, der von einem externen Registrierungstool bereitgestellt wird.
+ ''' Der Kontext kann verwendet werden, um Registrierungsschlüssel zu entfernen,
+ ''' Registrierungsaktivitäten zu protokollieren und Informationen
+ ''' über die registrierte Komponente abzurufen.
+ '''
+ Public Overrides Sub Unregister(context As RegistrationAttribute.RegistrationContext)
+
+ If context IsNot Nothing Then
+
+ context.RemoveKey(
+ String.Format(
+ CultureInfo.InvariantCulture,
+ "{0}\{1}",
+ ToolboxControlsInstallerPath,
+ context.ComponentType.Assembly.FullName))
+
+ End If
+
+ End Sub
+
+End Class
\ No newline at end of file
diff --git a/NotifyFormControl/NotifyFormControl.vbproj b/NotifyFormControl/NotifyFormControl.vbproj
index 0522eba..bcacba3 100644
--- a/NotifyFormControl/NotifyFormControl.vbproj
+++ b/NotifyFormControl/NotifyFormControl.vbproj
@@ -74,18 +74,16 @@
NotifyFormControl.xml
-
- NotifyFormControl.md
-
-
+
+
+
+
+
MyDescription.vb
-
- ProvideToolboxControlAttribute.vb
-
@@ -100,6 +98,7 @@
Component
+
diff --git a/NotifyFormControl/ProvideToolboxControlAttribute.vb b/NotifyFormControl/ProvideToolboxControlAttribute.vb
new file mode 100644
index 0000000..2a9b0ae
--- /dev/null
+++ b/NotifyFormControl/ProvideToolboxControlAttribute.vb
@@ -0,0 +1,128 @@
+' ****************************************************************************************************************
+' ProvideToolboxControlAttribute.vb
+' © 2024 by Andreas Sauer
+' ****************************************************************************************************************
+'
+
+Imports System
+Imports System.Collections.Generic
+Imports System.Globalization
+Imports System.Linq
+Imports System.Runtime.InteropServices
+Imports System.Text
+Imports Microsoft.VisualStudio.Shell
+
+'''
+''' Dieses Attribut fügt der Assembly einen Toolbox Controls Installer-Schlüssel hinzu,
+''' um Toolbox Controls aus der Assembly zu installieren.
+'''
+'''
+''' Zum Beispiel:
+''' [$(Rootkey)\ToolboxControlsInstaller\$FullAssemblyName$]
+''' "Codebase"="$path$"
+''' "WpfControls"="1"
+'''
+
+
+Public NotInheritable Class ProvideToolboxControlAttribute : Inherits RegistrationAttribute
+
+ Private Const ToolboxControlsInstallerPath As String = "ToolboxControlsInstaller"
+ Private _isWpfControls As Boolean
+ Private _name As String
+
+ '''
+ ''' Erstellt ein neues Attribut „Provide Toolbox Control“, um die Assembly für das
+ ''' Toolbox Controls-Installationsprogramm zu registrieren.
+ '''
+ '''
+ '''
+ Public Sub New(name As String, isWpfControls As Boolean)
+
+ If name Is Nothing Then
+ Throw New ArgumentException("name")
+ End If
+ Me.Name = name
+ Me.IsWpfControls = isWpfControls
+
+ End Sub
+
+ '''
+ ''' Ruft ab, ob die Toolbox-Steuerelemente für WPF gelten.
+ '''
+ Private Property IsWpfControls As Boolean
+ Get
+ Return Me._isWpfControls
+ End Get
+ Set(value As Boolean)
+ Me._isWpfControls = value
+ End Set
+ End Property
+
+ '''
+ ''' Ruft den Namen für die Steuerelemente ab.
+ '''
+ Private Property Name As String
+ Get
+ Return Me._name
+ End Get
+ Set(value As String)
+ Me._name = value
+ End Set
+ End Property
+
+ '''
+ ''' Wird aufgerufen, um dieses Attribut im angegebenen Kontext zu registrieren.
+ ''' Der Kontext enthält den Ort, an dem die Registrierungsinformationen
+ ''' platziert werden sollen.
+ ''' Es enthält auch andere Informationen wie den zu registrierenden Typ und Pfadinformationen.
+ '''
+ '''
+ ''' Vorgegebener Kontext für die Registrierung.
+ '''
+ Public Overrides Sub Register(context As RegistrationAttribute.RegistrationContext)
+
+ If context Is Nothing Then
+ Throw New ArgumentNullException("context")
+ End If
+ Using key As Key = context.CreateKey(
+ String.Format(
+ CultureInfo.InvariantCulture,
+ "{0}\{1}",
+ ToolboxControlsInstallerPath,
+ context.ComponentType.Assembly.FullName))
+
+ key.SetValue(String.Empty, Me.Name)
+ key.SetValue("Codebase", context.CodeBase)
+ If Me.IsWpfControls Then
+ key.SetValue("WPFControls", "1")
+ End If
+
+ End Using
+
+ End Sub
+
+ '''
+ ''' Wird aufgerufen, um die Registrierung dieses Attributs im angegebenen Kontext aufzuheben.
+ '''
+ '''
+ ''' Ein Registrierungskontext, der von einem externen Registrierungstool bereitgestellt wird.
+ ''' Der Kontext kann verwendet werden, um Registrierungsschlüssel zu entfernen,
+ ''' Registrierungsaktivitäten zu protokollieren und Informationen
+ ''' über die registrierte Komponente abzurufen.
+ '''
+ Public Overrides Sub Unregister(context As RegistrationAttribute.RegistrationContext)
+
+ If context IsNot Nothing Then
+
+ context.RemoveKey(
+ String.Format(
+ CultureInfo.InvariantCulture,
+ "{0}\{1}",
+ ToolboxControlsInstallerPath,
+ context.ComponentType.Assembly.FullName))
+
+ End If
+
+ End Sub
+
+End Class
\ No newline at end of file
diff --git a/SchlumpfSoft Controls.sln b/SchlumpfSoft Controls.sln
index d0e64d6..e1383ca 100644
--- a/SchlumpfSoft Controls.sln
+++ b/SchlumpfSoft Controls.sln
@@ -43,7 +43,6 @@ EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "CommonCodes", "CommonCodes", "{70445C5A-6847-451E-976E-E3543B4337D7}"
ProjectSection(SolutionItems) = preProject
CommonCodes\MyDescription.vb = CommonCodes\MyDescription.vb
- CommonCodes\ProvideToolboxControlAttribute.vb = CommonCodes\ProvideToolboxControlAttribute.vb
EndProjectSection
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "SevenSegmentControl", "SevenSegmentControl\SevenSegmentControl.vbproj", "{E4EB5FE5-7A23-4A30-8E17-9FEBD796FE53}"
diff --git a/SchlumpfSoftControls/SchlumpfSoftControls.vbproj b/SchlumpfSoftControls/SchlumpfSoftControls.vbproj
index 539a6c9..ab26071 100644
--- a/SchlumpfSoftControls/SchlumpfSoftControls.vbproj
+++ b/SchlumpfSoftControls/SchlumpfSoftControls.vbproj
@@ -71,6 +71,7 @@
SchlumpfSoftControls.xml
+
Designer
diff --git a/SevenSegmentControl/ProvideToolboxControlAttribute.vb b/SevenSegmentControl/ProvideToolboxControlAttribute.vb
new file mode 100644
index 0000000..2a9b0ae
--- /dev/null
+++ b/SevenSegmentControl/ProvideToolboxControlAttribute.vb
@@ -0,0 +1,128 @@
+' ****************************************************************************************************************
+' ProvideToolboxControlAttribute.vb
+' © 2024 by Andreas Sauer
+' ****************************************************************************************************************
+'
+
+Imports System
+Imports System.Collections.Generic
+Imports System.Globalization
+Imports System.Linq
+Imports System.Runtime.InteropServices
+Imports System.Text
+Imports Microsoft.VisualStudio.Shell
+
+'''
+''' Dieses Attribut fügt der Assembly einen Toolbox Controls Installer-Schlüssel hinzu,
+''' um Toolbox Controls aus der Assembly zu installieren.
+'''
+'''
+''' Zum Beispiel:
+''' [$(Rootkey)\ToolboxControlsInstaller\$FullAssemblyName$]
+''' "Codebase"="$path$"
+''' "WpfControls"="1"
+'''
+
+
+Public NotInheritable Class ProvideToolboxControlAttribute : Inherits RegistrationAttribute
+
+ Private Const ToolboxControlsInstallerPath As String = "ToolboxControlsInstaller"
+ Private _isWpfControls As Boolean
+ Private _name As String
+
+ '''
+ ''' Erstellt ein neues Attribut „Provide Toolbox Control“, um die Assembly für das
+ ''' Toolbox Controls-Installationsprogramm zu registrieren.
+ '''
+ '''
+ '''
+ Public Sub New(name As String, isWpfControls As Boolean)
+
+ If name Is Nothing Then
+ Throw New ArgumentException("name")
+ End If
+ Me.Name = name
+ Me.IsWpfControls = isWpfControls
+
+ End Sub
+
+ '''
+ ''' Ruft ab, ob die Toolbox-Steuerelemente für WPF gelten.
+ '''
+ Private Property IsWpfControls As Boolean
+ Get
+ Return Me._isWpfControls
+ End Get
+ Set(value As Boolean)
+ Me._isWpfControls = value
+ End Set
+ End Property
+
+ '''
+ ''' Ruft den Namen für die Steuerelemente ab.
+ '''
+ Private Property Name As String
+ Get
+ Return Me._name
+ End Get
+ Set(value As String)
+ Me._name = value
+ End Set
+ End Property
+
+ '''
+ ''' Wird aufgerufen, um dieses Attribut im angegebenen Kontext zu registrieren.
+ ''' Der Kontext enthält den Ort, an dem die Registrierungsinformationen
+ ''' platziert werden sollen.
+ ''' Es enthält auch andere Informationen wie den zu registrierenden Typ und Pfadinformationen.
+ '''
+ '''
+ ''' Vorgegebener Kontext für die Registrierung.
+ '''
+ Public Overrides Sub Register(context As RegistrationAttribute.RegistrationContext)
+
+ If context Is Nothing Then
+ Throw New ArgumentNullException("context")
+ End If
+ Using key As Key = context.CreateKey(
+ String.Format(
+ CultureInfo.InvariantCulture,
+ "{0}\{1}",
+ ToolboxControlsInstallerPath,
+ context.ComponentType.Assembly.FullName))
+
+ key.SetValue(String.Empty, Me.Name)
+ key.SetValue("Codebase", context.CodeBase)
+ If Me.IsWpfControls Then
+ key.SetValue("WPFControls", "1")
+ End If
+
+ End Using
+
+ End Sub
+
+ '''
+ ''' Wird aufgerufen, um die Registrierung dieses Attributs im angegebenen Kontext aufzuheben.
+ '''
+ '''
+ ''' Ein Registrierungskontext, der von einem externen Registrierungstool bereitgestellt wird.
+ ''' Der Kontext kann verwendet werden, um Registrierungsschlüssel zu entfernen,
+ ''' Registrierungsaktivitäten zu protokollieren und Informationen
+ ''' über die registrierte Komponente abzurufen.
+ '''
+ Public Overrides Sub Unregister(context As RegistrationAttribute.RegistrationContext)
+
+ If context IsNot Nothing Then
+
+ context.RemoveKey(
+ String.Format(
+ CultureInfo.InvariantCulture,
+ "{0}\{1}",
+ ToolboxControlsInstallerPath,
+ context.ComponentType.Assembly.FullName))
+
+ End If
+
+ End Sub
+
+End Class
\ No newline at end of file
diff --git a/SevenSegmentControl/SevenSegmentControl.vbproj b/SevenSegmentControl/SevenSegmentControl.vbproj
index 80c864d..82c6d02 100644
--- a/SevenSegmentControl/SevenSegmentControl.vbproj
+++ b/SevenSegmentControl/SevenSegmentControl.vbproj
@@ -73,18 +73,16 @@
SevenSegmentControl.xml
-
- SevenSegmentControl.md
-
-
+
+
+
+
+
MyDescription.vb
-
- ProvideToolboxControlAttribute.vb
-
@@ -92,6 +90,7 @@
True
Resources.resx
+
Component
diff --git a/ShapeControl/ProvideToolboxControlAttribute.vb b/ShapeControl/ProvideToolboxControlAttribute.vb
new file mode 100644
index 0000000..2a9b0ae
--- /dev/null
+++ b/ShapeControl/ProvideToolboxControlAttribute.vb
@@ -0,0 +1,128 @@
+' ****************************************************************************************************************
+' ProvideToolboxControlAttribute.vb
+' © 2024 by Andreas Sauer
+' ****************************************************************************************************************
+'
+
+Imports System
+Imports System.Collections.Generic
+Imports System.Globalization
+Imports System.Linq
+Imports System.Runtime.InteropServices
+Imports System.Text
+Imports Microsoft.VisualStudio.Shell
+
+'''
+''' Dieses Attribut fügt der Assembly einen Toolbox Controls Installer-Schlüssel hinzu,
+''' um Toolbox Controls aus der Assembly zu installieren.
+'''
+'''
+''' Zum Beispiel:
+''' [$(Rootkey)\ToolboxControlsInstaller\$FullAssemblyName$]
+''' "Codebase"="$path$"
+''' "WpfControls"="1"
+'''
+
+
+Public NotInheritable Class ProvideToolboxControlAttribute : Inherits RegistrationAttribute
+
+ Private Const ToolboxControlsInstallerPath As String = "ToolboxControlsInstaller"
+ Private _isWpfControls As Boolean
+ Private _name As String
+
+ '''
+ ''' Erstellt ein neues Attribut „Provide Toolbox Control“, um die Assembly für das
+ ''' Toolbox Controls-Installationsprogramm zu registrieren.
+ '''
+ '''
+ '''
+ Public Sub New(name As String, isWpfControls As Boolean)
+
+ If name Is Nothing Then
+ Throw New ArgumentException("name")
+ End If
+ Me.Name = name
+ Me.IsWpfControls = isWpfControls
+
+ End Sub
+
+ '''
+ ''' Ruft ab, ob die Toolbox-Steuerelemente für WPF gelten.
+ '''
+ Private Property IsWpfControls As Boolean
+ Get
+ Return Me._isWpfControls
+ End Get
+ Set(value As Boolean)
+ Me._isWpfControls = value
+ End Set
+ End Property
+
+ '''
+ ''' Ruft den Namen für die Steuerelemente ab.
+ '''
+ Private Property Name As String
+ Get
+ Return Me._name
+ End Get
+ Set(value As String)
+ Me._name = value
+ End Set
+ End Property
+
+ '''
+ ''' Wird aufgerufen, um dieses Attribut im angegebenen Kontext zu registrieren.
+ ''' Der Kontext enthält den Ort, an dem die Registrierungsinformationen
+ ''' platziert werden sollen.
+ ''' Es enthält auch andere Informationen wie den zu registrierenden Typ und Pfadinformationen.
+ '''
+ '''
+ ''' Vorgegebener Kontext für die Registrierung.
+ '''
+ Public Overrides Sub Register(context As RegistrationAttribute.RegistrationContext)
+
+ If context Is Nothing Then
+ Throw New ArgumentNullException("context")
+ End If
+ Using key As Key = context.CreateKey(
+ String.Format(
+ CultureInfo.InvariantCulture,
+ "{0}\{1}",
+ ToolboxControlsInstallerPath,
+ context.ComponentType.Assembly.FullName))
+
+ key.SetValue(String.Empty, Me.Name)
+ key.SetValue("Codebase", context.CodeBase)
+ If Me.IsWpfControls Then
+ key.SetValue("WPFControls", "1")
+ End If
+
+ End Using
+
+ End Sub
+
+ '''
+ ''' Wird aufgerufen, um die Registrierung dieses Attributs im angegebenen Kontext aufzuheben.
+ '''
+ '''
+ ''' Ein Registrierungskontext, der von einem externen Registrierungstool bereitgestellt wird.
+ ''' Der Kontext kann verwendet werden, um Registrierungsschlüssel zu entfernen,
+ ''' Registrierungsaktivitäten zu protokollieren und Informationen
+ ''' über die registrierte Komponente abzurufen.
+ '''
+ Public Overrides Sub Unregister(context As RegistrationAttribute.RegistrationContext)
+
+ If context IsNot Nothing Then
+
+ context.RemoveKey(
+ String.Format(
+ CultureInfo.InvariantCulture,
+ "{0}\{1}",
+ ToolboxControlsInstallerPath,
+ context.ComponentType.Assembly.FullName))
+
+ End If
+
+ End Sub
+
+End Class
\ No newline at end of file
diff --git a/ShapeControl/ShapeControl.vbproj b/ShapeControl/ShapeControl.vbproj
index 4287973..f3a925b 100644
--- a/ShapeControl/ShapeControl.vbproj
+++ b/ShapeControl/ShapeControl.vbproj
@@ -73,18 +73,15 @@
ShapeControl.xml
-
- ShapeControl.md
-
-
+
+
+
+
MyDescription.vb
-
- ProvideToolboxControlAttribute.vb
-
@@ -93,6 +90,7 @@
True
Resources.resx
+
Component
diff --git a/TransparentLabelControl/ProvideToolboxControlAttribute.vb b/TransparentLabelControl/ProvideToolboxControlAttribute.vb
new file mode 100644
index 0000000..2a9b0ae
--- /dev/null
+++ b/TransparentLabelControl/ProvideToolboxControlAttribute.vb
@@ -0,0 +1,128 @@
+' ****************************************************************************************************************
+' ProvideToolboxControlAttribute.vb
+' © 2024 by Andreas Sauer
+' ****************************************************************************************************************
+'
+
+Imports System
+Imports System.Collections.Generic
+Imports System.Globalization
+Imports System.Linq
+Imports System.Runtime.InteropServices
+Imports System.Text
+Imports Microsoft.VisualStudio.Shell
+
+'''
+''' Dieses Attribut fügt der Assembly einen Toolbox Controls Installer-Schlüssel hinzu,
+''' um Toolbox Controls aus der Assembly zu installieren.
+'''
+'''
+''' Zum Beispiel:
+''' [$(Rootkey)\ToolboxControlsInstaller\$FullAssemblyName$]
+''' "Codebase"="$path$"
+''' "WpfControls"="1"
+'''
+
+
+Public NotInheritable Class ProvideToolboxControlAttribute : Inherits RegistrationAttribute
+
+ Private Const ToolboxControlsInstallerPath As String = "ToolboxControlsInstaller"
+ Private _isWpfControls As Boolean
+ Private _name As String
+
+ '''
+ ''' Erstellt ein neues Attribut „Provide Toolbox Control“, um die Assembly für das
+ ''' Toolbox Controls-Installationsprogramm zu registrieren.
+ '''
+ '''
+ '''
+ Public Sub New(name As String, isWpfControls As Boolean)
+
+ If name Is Nothing Then
+ Throw New ArgumentException("name")
+ End If
+ Me.Name = name
+ Me.IsWpfControls = isWpfControls
+
+ End Sub
+
+ '''
+ ''' Ruft ab, ob die Toolbox-Steuerelemente für WPF gelten.
+ '''
+ Private Property IsWpfControls As Boolean
+ Get
+ Return Me._isWpfControls
+ End Get
+ Set(value As Boolean)
+ Me._isWpfControls = value
+ End Set
+ End Property
+
+ '''
+ ''' Ruft den Namen für die Steuerelemente ab.
+ '''
+ Private Property Name As String
+ Get
+ Return Me._name
+ End Get
+ Set(value As String)
+ Me._name = value
+ End Set
+ End Property
+
+ '''
+ ''' Wird aufgerufen, um dieses Attribut im angegebenen Kontext zu registrieren.
+ ''' Der Kontext enthält den Ort, an dem die Registrierungsinformationen
+ ''' platziert werden sollen.
+ ''' Es enthält auch andere Informationen wie den zu registrierenden Typ und Pfadinformationen.
+ '''
+ '''
+ ''' Vorgegebener Kontext für die Registrierung.
+ '''
+ Public Overrides Sub Register(context As RegistrationAttribute.RegistrationContext)
+
+ If context Is Nothing Then
+ Throw New ArgumentNullException("context")
+ End If
+ Using key As Key = context.CreateKey(
+ String.Format(
+ CultureInfo.InvariantCulture,
+ "{0}\{1}",
+ ToolboxControlsInstallerPath,
+ context.ComponentType.Assembly.FullName))
+
+ key.SetValue(String.Empty, Me.Name)
+ key.SetValue("Codebase", context.CodeBase)
+ If Me.IsWpfControls Then
+ key.SetValue("WPFControls", "1")
+ End If
+
+ End Using
+
+ End Sub
+
+ '''
+ ''' Wird aufgerufen, um die Registrierung dieses Attributs im angegebenen Kontext aufzuheben.
+ '''
+ '''
+ ''' Ein Registrierungskontext, der von einem externen Registrierungstool bereitgestellt wird.
+ ''' Der Kontext kann verwendet werden, um Registrierungsschlüssel zu entfernen,
+ ''' Registrierungsaktivitäten zu protokollieren und Informationen
+ ''' über die registrierte Komponente abzurufen.
+ '''
+ Public Overrides Sub Unregister(context As RegistrationAttribute.RegistrationContext)
+
+ If context IsNot Nothing Then
+
+ context.RemoveKey(
+ String.Format(
+ CultureInfo.InvariantCulture,
+ "{0}\{1}",
+ ToolboxControlsInstallerPath,
+ context.ComponentType.Assembly.FullName))
+
+ End If
+
+ End Sub
+
+End Class
\ No newline at end of file
diff --git a/TransparentLabelControl/TransparentLabelControl.vbproj b/TransparentLabelControl/TransparentLabelControl.vbproj
index c615135..b7b1ec1 100644
--- a/TransparentLabelControl/TransparentLabelControl.vbproj
+++ b/TransparentLabelControl/TransparentLabelControl.vbproj
@@ -72,25 +72,17 @@
False
TransparentLabelControl.xml
-
-
- TransparentLabelControl.md
-
-
-
MyDescription.vb
-
- ProvideToolboxControlAttribute.vb
-
True
True
Resources.resx
+
Component
@@ -124,6 +116,10 @@
+
+
+
+