commit 5c91fd916da8d732fad22919c22dbf688acaa7b5 Author: Eugen Höglinger Date: Tue Aug 29 11:55:31 2023 +0200 Initialized - Control mit dem Tabellen bearbeitet werden können - Bei Auswahl von Elementen wird ein Event ausgelöst - Das Event behandelt dann ein Ergebnis im Hauptprogramm diff --git a/.vs/Test_UserControl/FileContentIndex/a3df156f-882d-4994-8f39-ec1310af363c.vsidx b/.vs/Test_UserControl/FileContentIndex/a3df156f-882d-4994-8f39-ec1310af363c.vsidx new file mode 100644 index 0000000..c7b6595 Binary files /dev/null and b/.vs/Test_UserControl/FileContentIndex/a3df156f-882d-4994-8f39-ec1310af363c.vsidx differ diff --git a/.vs/Test_UserControl/v17/.suo b/.vs/Test_UserControl/v17/.suo new file mode 100644 index 0000000..b471bed Binary files /dev/null and b/.vs/Test_UserControl/v17/.suo differ diff --git a/Daten/Pfeil_links.png b/Daten/Pfeil_links.png new file mode 100644 index 0000000..c8aa72b Binary files /dev/null and b/Daten/Pfeil_links.png differ diff --git a/Daten/Pfeil_oben.png b/Daten/Pfeil_oben.png new file mode 100644 index 0000000..b256203 Binary files /dev/null and b/Daten/Pfeil_oben.png differ diff --git a/Daten/Pfeil_rechts.png b/Daten/Pfeil_rechts.png new file mode 100644 index 0000000..0881380 Binary files /dev/null and b/Daten/Pfeil_rechts.png differ diff --git a/Daten/Pfeil_unten.png b/Daten/Pfeil_unten.png new file mode 100644 index 0000000..10ec1a8 Binary files /dev/null and b/Daten/Pfeil_unten.png differ diff --git a/HE-Test_Dll/App.config b/HE-Test_Dll/App.config new file mode 100644 index 0000000..ecdcf8a --- /dev/null +++ b/HE-Test_Dll/App.config @@ -0,0 +1,6 @@ + + + + + + diff --git a/HE-Test_Dll/Form1.Designer.cs b/HE-Test_Dll/Form1.Designer.cs new file mode 100644 index 0000000..c394457 --- /dev/null +++ b/HE-Test_Dll/Form1.Designer.cs @@ -0,0 +1,158 @@ +namespace HE_Test_Dll +{ + partial class Form1 + { + /// + /// Erforderliche Designervariable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Verwendete Ressourcen bereinigen. + /// + /// True, wenn verwaltete Ressourcen gelöscht werden sollen; andernfalls False. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Vom Windows Form-Designer generierter Code + + /// + /// Erforderliche Methode für die Designerunterstützung. + /// Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden. + /// + private void InitializeComponent() + { + this.buttonShowInfo = new System.Windows.Forms.Button(); + this.groupBoxProgramInfo = new System.Windows.Forms.GroupBox(); + this.labelProgramInfo = new System.Windows.Forms.Label(); + this.groupBoxDLLInfo = new System.Windows.Forms.GroupBox(); + this.labelDLLInfo = new System.Windows.Forms.Label(); + this.userControl1 = new Test_UserControl.UserControl1(); + this.labelResult = new System.Windows.Forms.Label(); + this.groupBoxProgramInfo.SuspendLayout(); + this.groupBoxDLLInfo.SuspendLayout(); + this.SuspendLayout(); + // + // buttonShowInfo + // + this.buttonShowInfo.Location = new System.Drawing.Point(12, 287); + this.buttonShowInfo.Name = "buttonShowInfo"; + this.buttonShowInfo.Size = new System.Drawing.Size(776, 23); + this.buttonShowInfo.TabIndex = 0; + this.buttonShowInfo.Text = "Start"; + this.buttonShowInfo.UseVisualStyleBackColor = true; + this.buttonShowInfo.Click += new System.EventHandler(this.buttonShowInfo_Click); + // + // groupBoxProgramInfo + // + this.groupBoxProgramInfo.Controls.Add(this.labelProgramInfo); + this.groupBoxProgramInfo.Location = new System.Drawing.Point(12, 372); + this.groupBoxProgramInfo.Name = "groupBoxProgramInfo"; + this.groupBoxProgramInfo.Size = new System.Drawing.Size(385, 66); + this.groupBoxProgramInfo.TabIndex = 11; + this.groupBoxProgramInfo.TabStop = false; + this.groupBoxProgramInfo.Text = "Programm Information"; + // + // labelProgramInfo + // + this.labelProgramInfo.AutoSize = true; + this.labelProgramInfo.ImeMode = System.Windows.Forms.ImeMode.NoControl; + this.labelProgramInfo.Location = new System.Drawing.Point(7, 20); + this.labelProgramInfo.Name = "labelProgramInfo"; + this.labelProgramInfo.Size = new System.Drawing.Size(16, 13); + this.labelProgramInfo.TabIndex = 0; + this.labelProgramInfo.Text = "..."; + // + // groupBoxDLLInfo + // + this.groupBoxDLLInfo.Controls.Add(this.labelDLLInfo); + this.groupBoxDLLInfo.Location = new System.Drawing.Point(403, 372); + this.groupBoxDLLInfo.Name = "groupBoxDLLInfo"; + this.groupBoxDLLInfo.Size = new System.Drawing.Size(385, 66); + this.groupBoxDLLInfo.TabIndex = 12; + this.groupBoxDLLInfo.TabStop = false; + this.groupBoxDLLInfo.Text = "DLL Information"; + // + // labelDLLInfo + // + this.labelDLLInfo.AutoSize = true; + this.labelDLLInfo.ImeMode = System.Windows.Forms.ImeMode.NoControl; + this.labelDLLInfo.Location = new System.Drawing.Point(7, 20); + this.labelDLLInfo.Name = "labelDLLInfo"; + this.labelDLLInfo.Size = new System.Drawing.Size(16, 13); + this.labelDLLInfo.TabIndex = 0; + this.labelDLLInfo.Text = "..."; + // + // userControl1 + // + this.userControl1.ButtonAddSeparatorAvailability = 0; + this.userControl1.ButtonAddSeparatorVisibility = 0; + this.userControl1.ButtonDownAvailability = 0; + this.userControl1.ButtonDownVisibility = 0; + this.userControl1.ButtonUpAvailability = 0; + this.userControl1.ButtonUpVisibility = 0; + this.userControl1.CheckBoxEncryptAvailability = 0; + this.userControl1.CheckBoxEncryptStatusSelected = false; + this.userControl1.CheckBoxEncryptVisibility = 0; + this.userControl1.CheckBoxStandardAvailability = 0; + this.userControl1.CheckBoxStandardStatusSelected = false; + this.userControl1.CheckBoxStandardVisibility = 0; + this.userControl1.Location = new System.Drawing.Point(12, 12); + this.userControl1.MaximumSize = new System.Drawing.Size(120, 170); + this.userControl1.MinimumSize = new System.Drawing.Size(90, 127); + this.userControl1.Name = "userControl1"; + this.userControl1.PressedButton = null; + this.userControl1.Size = new System.Drawing.Size(90, 127); + this.userControl1.SizeX = 0; + this.userControl1.SizeY = 0; + this.userControl1.TabIndex = 13; + // + // labelResult + // + this.labelResult.AutoSize = true; + this.labelResult.Location = new System.Drawing.Point(12, 204); + this.labelResult.Name = "labelResult"; + this.labelResult.Size = new System.Drawing.Size(16, 13); + this.labelResult.TabIndex = 14; + this.labelResult.Text = "..."; + // + // Form1 + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(800, 450); + this.Controls.Add(this.labelResult); + this.Controls.Add(this.userControl1); + this.Controls.Add(this.groupBoxProgramInfo); + this.Controls.Add(this.groupBoxDLLInfo); + this.Controls.Add(this.buttonShowInfo); + this.Name = "Form1"; + this.Text = "Test_InfoBox"; + this.Load += new System.EventHandler(this.Form1_Load); + this.groupBoxProgramInfo.ResumeLayout(false); + this.groupBoxProgramInfo.PerformLayout(); + this.groupBoxDLLInfo.ResumeLayout(false); + this.groupBoxDLLInfo.PerformLayout(); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.Button buttonShowInfo; + private System.Windows.Forms.GroupBox groupBoxProgramInfo; + private System.Windows.Forms.Label labelProgramInfo; + private System.Windows.Forms.GroupBox groupBoxDLLInfo; + private System.Windows.Forms.Label labelDLLInfo; + private Test_UserControl.UserControl1 userControl1; + private System.Windows.Forms.Label labelResult; + } +} + diff --git a/HE-Test_Dll/Form1.cs b/HE-Test_Dll/Form1.cs new file mode 100644 index 0000000..4d8c971 --- /dev/null +++ b/HE-Test_Dll/Form1.cs @@ -0,0 +1,248 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.IO; +using System.Linq; +using System.Reflection; +using System.Reflection.Emit; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; +using System.Xml.Linq; +using Test_UserControl; +using static System.Net.Mime.MediaTypeNames; +using static System.Windows.Forms.VisualStyles.VisualStyleElement; +using static System.Windows.Forms.VisualStyles.VisualStyleElement.ToolTip; + +namespace HE_Test_Dll +{ + public partial class Form1 : Form + { + #region Version und Copyright + // Version und Copyright + string programName = Path.GetFileNameWithoutExtension(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase); //Den Programmnamen auslesen + string programVersion = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString(); + static object[] attributes = System.Reflection.Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyCopyrightAttribute), false); + string copyright = GenerateCopyright(); + //string icon = Application.StartupPath + "\\Info.bmp"; + //Assembly Datum und Zeit + static DateTime value = AssemblyDateTime(); + string date = value.ToShortDateString(); + string time = value.ToLongTimeString(); + private static DateTime AssemblyDateTime() + { + var version = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version; + var buildDateTime = new DateTime(2000, 1, 1).Add(new TimeSpan(TimeSpan.TicksPerDay * version.Build + TimeSpan.TicksPerSecond * 2 * version.Revision)); + //Tage seit dem 1. Januar 2000 und Sekunden seit Mitternacht, (multiplizier mit 2 ergibt das Original) + return buildDateTime; + } + + private static string CurrentYear() + { + DateTime dtn = DateTime.Now; + return dtn.Year.ToString(); + } + + private static string StartYear() + { + //string startYear = ((AssemblyCopyrightAttribute)attributes[0]).Copyright; + //return startYear.Remove(0, startYear.LastIndexOf(" ") + 1); + string startYear = ""; + if (((AssemblyCopyrightAttribute)attributes[0]).Copyright.Contains("Copyright © ")) + { + startYear = ((AssemblyCopyrightAttribute)attributes[0]).Copyright.Replace("Copyright © ", ""); + while (startYear.StartsWith(" ")) + { + startYear = startYear.Remove(0, 1); + } + startYear = startYear.Remove(startYear.IndexOf(" ")); + return startYear; + } + else + { + DateTime dtn = DateTime.Now; + return dtn.Year.ToString(); + } + } + + private static string GenerateCopyright() + { + string startYear = StartYear(); + string currentYear = CurrentYear(); + + if (startYear == currentYear) + { + return ((AssemblyCopyrightAttribute)attributes[0]).Copyright; + } + else + { + //return String.Concat(((AssemblyCopyrightAttribute)attributes[0]).Copyright, "-", currentYear); + return ((AssemblyCopyrightAttribute)attributes[0]).Copyright.Replace(startYear, String.Concat(startYear, "-", currentYear)); + } + } + #endregion + + #region Programm-Info + /// + /// Contains the name of the program file + /// + public static string ProgramName { set; get; } + + /// + /// Contains the version of the program file + /// + public static string ProgramVersion { set; get; } + + /// + /// Contains the copyright notice + /// + public static string Copyright { set; get; } + + private void SetProgramInfo() + { + //Name, Version und Copyright setzen + ProgramName = programName; + ProgramVersion = programVersion; + Copyright = copyright; + } + #endregion + + public Form1() + { + SetProgramInfo(); + InitializeComponent(); + } + + //Prüft ob der Initialisierungsprozess läuft. + //Nach der Initialisierung wird der Wert auf 'true' gesetzt. + bool initialized = false; + + private void Form1_Load(object sender, EventArgs e) + { + //Programm-Information ausgeben + labelProgramInfo.Text = String.Concat(ProgramName, "\r\n", ProgramVersion, "\r\n", Copyright); // Zeigt die Programm-Information an + + //DLL-Information ausgeben + labelDLLInfo.Text = String.Concat(Test_UserControl.UserControl1.DllName, "\r\n", Test_UserControl.UserControl1.DllVersion, "\r\n", Test_UserControl.UserControl1.Copyright); // Zeigt die DLL-Information an + + //Ereignisse abbonieren + userControl1.ButtonUpClick += DoMoveUp; + userControl1.ButtonDownClick += DoMoveDown; + userControl1.ButtonAddSeparatorClick += DoAddSeperator; + userControl1.CheckboxEncryptCheck += DoEncrypt; + userControl1.CheckboxStandardCheck += DoStandard; + + //Das Aussehen des Controlls setzen + InitializeUserControl(); + + initialized = true; + } + + private void InitializeUserControl() + { + userControl1.ButtonUpAvailability = (int)Availability.Enabled; + userControl1.ButtonUpVisibility = (int)Visibility.Visible; + userControl1.ButtonDownAvailability = (int)Availability.Enabled; + userControl1.ButtonDownVisibility = (int)Visibility.Visible; + userControl1.ButtonAddSeparatorAvailability = (int)Availability.Enabled; + userControl1.ButtonAddSeparatorVisibility = (int)Visibility.Visible; + userControl1.CheckBoxEncryptAvailability = (int)Availability.Enabled; + userControl1.CheckBoxEncryptVisibility = (int)Visibility.Visible; + userControl1.CheckBoxEncryptStatusSelected = (bool)true; + userControl1.CheckBoxStandardAvailability = (int)Availability.Enabled; + userControl1.CheckBoxStandardVisibility = (int)Visibility.Visible; + userControl1.CheckBoxStandardStatusSelected = (bool)true; + userControl1.SizeX = 90; + userControl1.SizeY = 127; + userControl1.SetVisibility(); + } + + private void buttonShowInfo_Click(object sender, EventArgs e) + { + // + // Diese Zeilen gehört in das Programm kopiert + // + // + + //Hat bei diesem Programm keine Funktion !!! + MessageBox.Show("Hat bei diesem Programm keine Funktion !!!"); + + // + // + } + + #region Ereignisse + //Die Ereignisse werden nach betätigen eines Elementes aufgerufen + private void DoMoveUp(object source, EventArgs e) + { + //Weil sich Zustände der Elemente während der Initialisierung ändern, + //wird die Ausführung der folgenden Aktionen unterdrückt + if (initialized) + { + MessageBox.Show("Juhu, hat funktioniert"); + labelResult.Text = "Button Up gedrückt"; + } + } + + private void DoMoveDown(object source, EventArgs e) + { + //Weil sich Zustände der Elemente während der Initialisierung ändern, + //wird die Ausführung der folgenden Aktionen unterdrückt + if (initialized) + { + MessageBox.Show("Juhu, hat funktioniert"); + labelResult.Text = "Button Down gedrückt"; + } + } + + private void DoAddSeperator(object source, EventArgs e) + { + //Weil sich Zustände der Elemente während der Initialisierung ändern, + //wird die Ausführung der folgenden Aktionen unterdrückt + if (initialized) + { + MessageBox.Show("Juhu, hat funktioniert"); + labelResult.Text = "Button AddSeperator gedrückt"; + } + } + + private void DoEncrypt(object source, EventArgs e) + { + //Weil sich Zustände der Elemente während der Initialisierung ändern, + //wird die Ausführung der folgenden Aktionen unterdrückt + if (initialized) + { + MessageBox.Show("Juhu, hat funktioniert"); + if (userControl1.CheckBoxEncryptStatusSelected == false) + { + labelResult.Text = "Checkbox Chiffrieren angewählt"; + } + else + { + labelResult.Text = "Checkbox Chiffrieren abgewählt"; + } + } + } + + private void DoStandard(object source, EventArgs e) + { + //Weil sich Zustände der Elemente während der Initialisierung ändern, + //wird die Ausführung der folgenden Aktionen unterdrückt + if (initialized) + { + MessageBox.Show("Juhu, hat funktioniert"); + if (userControl1.CheckBoxStandardStatusSelected == false) + { + labelResult.Text = "Checkbox Standard angewählt"; + } + else + { + labelResult.Text = "Checkbox Standard abgewählt"; + } + } + } + #endregion + } +} diff --git a/HE-Test_Dll/Form1.resx b/HE-Test_Dll/Form1.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/HE-Test_Dll/Form1.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/HE-Test_Dll/HE-Test_Dll.csproj b/HE-Test_Dll/HE-Test_Dll.csproj new file mode 100644 index 0000000..80364bd --- /dev/null +++ b/HE-Test_Dll/HE-Test_Dll.csproj @@ -0,0 +1,88 @@ + + + + + Debug + AnyCPU + {4381B7EE-3EC7-45DF-A719-7C83DA83F610} + WinExe + HE_Test_Dll + HE-Test_Dll + v4.7.2 + 512 + true + false + + + + AnyCPU + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + AnyCPU + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + + + + + + + + + + + + ..\Test_UserControl\bin\Debug\testUserControl1.dll + + + + + Form + + + Form1.cs + + + + + Form1.cs + + + ResXFileCodeGenerator + Resources.Designer.cs + Designer + + + True + Resources.resx + True + + + SettingsSingleFileGenerator + Settings.Designer.cs + + + True + Settings.settings + True + + + + + + + \ No newline at end of file diff --git a/HE-Test_Dll/Program.cs b/HE-Test_Dll/Program.cs new file mode 100644 index 0000000..7e7ea8f --- /dev/null +++ b/HE-Test_Dll/Program.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace HE_Test_Dll +{ + internal static class Program + { + /// + /// Der Haupteinstiegspunkt für die Anwendung. + /// + [STAThread] + static void Main() + { + Application.EnableVisualStyles(); + Application.SetCompatibleTextRenderingDefault(false); + Application.Run(new Form1()); + } + } +} diff --git a/HE-Test_Dll/Properties/AssemblyInfo.cs b/HE-Test_Dll/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..a0e249b --- /dev/null +++ b/HE-Test_Dll/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// Allgemeine Informationen über eine Assembly werden über die folgenden +// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern, +// die einer Assembly zugeordnet sind. +[assembly: AssemblyTitle("HE_Test_Dll")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("HE_Test_Dll")] +[assembly: AssemblyCopyright("Copyright © 2022 by Eugen Höglinger")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Durch Festlegen von ComVisible auf FALSE werden die Typen in dieser Assembly +// für COM-Komponenten unsichtbar. Wenn Sie auf einen Typ in dieser Assembly von +// COM aus zugreifen müssen, sollten Sie das ComVisible-Attribut für diesen Typ auf "True" festlegen. +[assembly: ComVisible(false)] + +// Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird +[assembly: Guid("4381b7ee-3ec7-45df-a719-7c83da83f610")] + +// Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten: +// +// Hauptversion +// Nebenversion +// Buildnummer +// Revision +// +// Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden, +// übernehmen, indem Sie "*" eingeben: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.*")] +//[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/HE-Test_Dll/Properties/Resources.Designer.cs b/HE-Test_Dll/Properties/Resources.Designer.cs new file mode 100644 index 0000000..d12015c --- /dev/null +++ b/HE-Test_Dll/Properties/Resources.Designer.cs @@ -0,0 +1,71 @@ +//------------------------------------------------------------------------------ +// +// Dieser Code wurde von einem Tool generiert. +// Laufzeitversion:4.0.30319.42000 +// +// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn +// der Code erneut generiert wird. +// +//------------------------------------------------------------------------------ + +using System; + +namespace Properties +{ + /// + /// Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + /// + // Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert + // -Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert. + // Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen + // mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class Resources + { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal Resources() + { + } + + /// + /// Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager + { + get + { + if (object.ReferenceEquals(resourceMan, null)) + { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Properties.Resources", typeof(Resources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + /// Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture + { + get + { + return resourceCulture; + } + set + { + resourceCulture = value; + } + } + } +} diff --git a/HE-Test_Dll/Properties/Resources.resx b/HE-Test_Dll/Properties/Resources.resx new file mode 100644 index 0000000..af7dbeb --- /dev/null +++ b/HE-Test_Dll/Properties/Resources.resx @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/HE-Test_Dll/Properties/Settings.Designer.cs b/HE-Test_Dll/Properties/Settings.Designer.cs new file mode 100644 index 0000000..7a134d5 --- /dev/null +++ b/HE-Test_Dll/Properties/Settings.Designer.cs @@ -0,0 +1,30 @@ +//------------------------------------------------------------------------------ +// +// Dieser Code wurde von einem Tool generiert. +// Laufzeitversion:4.0.30319.42000 +// +// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn +// der Code erneut generiert wird. +// +//------------------------------------------------------------------------------ + +namespace Properties +{ + + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.4.0.0")] + internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase + { + + private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); + + public static Settings Default + { + get + { + return defaultInstance; + } + } + } +} diff --git a/HE-Test_Dll/Properties/Settings.settings b/HE-Test_Dll/Properties/Settings.settings new file mode 100644 index 0000000..3964565 --- /dev/null +++ b/HE-Test_Dll/Properties/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/HE-Test_Dll/bin/Debug/HE-Test_Dll.exe b/HE-Test_Dll/bin/Debug/HE-Test_Dll.exe new file mode 100644 index 0000000..3c31334 Binary files /dev/null and b/HE-Test_Dll/bin/Debug/HE-Test_Dll.exe differ diff --git a/HE-Test_Dll/bin/Debug/HE-Test_Dll.exe.config b/HE-Test_Dll/bin/Debug/HE-Test_Dll.exe.config new file mode 100644 index 0000000..ecdcf8a --- /dev/null +++ b/HE-Test_Dll/bin/Debug/HE-Test_Dll.exe.config @@ -0,0 +1,6 @@ + + + + + + diff --git a/HE-Test_Dll/bin/Debug/HE-Test_Dll.pdb b/HE-Test_Dll/bin/Debug/HE-Test_Dll.pdb new file mode 100644 index 0000000..f50a1a7 Binary files /dev/null and b/HE-Test_Dll/bin/Debug/HE-Test_Dll.pdb differ diff --git a/HE-Test_Dll/bin/Debug/testUserControl1.dll b/HE-Test_Dll/bin/Debug/testUserControl1.dll new file mode 100644 index 0000000..65c4c4a Binary files /dev/null and b/HE-Test_Dll/bin/Debug/testUserControl1.dll differ diff --git a/HE-Test_Dll/bin/Debug/testUserControl1.pdb b/HE-Test_Dll/bin/Debug/testUserControl1.pdb new file mode 100644 index 0000000..0fff589 Binary files /dev/null and b/HE-Test_Dll/bin/Debug/testUserControl1.pdb differ diff --git a/HE-Test_Dll/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs b/HE-Test_Dll/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs new file mode 100644 index 0000000..3871b18 --- /dev/null +++ b/HE-Test_Dll/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs @@ -0,0 +1,4 @@ +// +using System; +using System.Reflection; +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.7.2", FrameworkDisplayName = ".NET Framework 4.7.2")] diff --git a/HE-Test_Dll/obj/Debug/DesignTimeResolveAssemblyReferences.cache b/HE-Test_Dll/obj/Debug/DesignTimeResolveAssemblyReferences.cache new file mode 100644 index 0000000..ac7ade7 Binary files /dev/null and b/HE-Test_Dll/obj/Debug/DesignTimeResolveAssemblyReferences.cache differ diff --git a/HE-Test_Dll/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/HE-Test_Dll/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000..0f364b8 Binary files /dev/null and b/HE-Test_Dll/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/HE-Test_Dll/obj/Debug/HE-Test_Dll.csproj.AssemblyReference.cache b/HE-Test_Dll/obj/Debug/HE-Test_Dll.csproj.AssemblyReference.cache new file mode 100644 index 0000000..94b1b12 Binary files /dev/null and b/HE-Test_Dll/obj/Debug/HE-Test_Dll.csproj.AssemblyReference.cache differ diff --git a/HE-Test_Dll/obj/Debug/HE-Test_Dll.csproj.CopyComplete b/HE-Test_Dll/obj/Debug/HE-Test_Dll.csproj.CopyComplete new file mode 100644 index 0000000..e69de29 diff --git a/HE-Test_Dll/obj/Debug/HE-Test_Dll.csproj.CoreCompileInputs.cache b/HE-Test_Dll/obj/Debug/HE-Test_Dll.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000..4bb99aa --- /dev/null +++ b/HE-Test_Dll/obj/Debug/HE-Test_Dll.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +91eb5b545beb72954c33bc6378c7d5e5a4940b7b diff --git a/HE-Test_Dll/obj/Debug/HE-Test_Dll.csproj.FileListAbsolute.txt b/HE-Test_Dll/obj/Debug/HE-Test_Dll.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..194a153 --- /dev/null +++ b/HE-Test_Dll/obj/Debug/HE-Test_Dll.csproj.FileListAbsolute.txt @@ -0,0 +1,13 @@ +C:\CAD\Git-WorkRepository\VisualStudio\_TEST\Test_UserControl.git\HE-Test_Dll\obj\Debug\HE-Test_Dll.csproj.AssemblyReference.cache +C:\CAD\Git-WorkRepository\VisualStudio\_TEST\Test_UserControl.git\HE-Test_Dll\obj\Debug\HE_Test_Dll.Form1.resources +C:\CAD\Git-WorkRepository\VisualStudio\_TEST\Test_UserControl.git\HE-Test_Dll\obj\Debug\HE_Test_Dll.Properties.Resources.resources +C:\CAD\Git-WorkRepository\VisualStudio\_TEST\Test_UserControl.git\HE-Test_Dll\obj\Debug\HE-Test_Dll.csproj.GenerateResource.cache +C:\CAD\Git-WorkRepository\VisualStudio\_TEST\Test_UserControl.git\HE-Test_Dll\obj\Debug\HE-Test_Dll.csproj.CoreCompileInputs.cache +C:\CAD\Git-WorkRepository\VisualStudio\_TEST\Test_UserControl.git\HE-Test_Dll\bin\Debug\HE-Test_Dll.exe.config +C:\CAD\Git-WorkRepository\VisualStudio\_TEST\Test_UserControl.git\HE-Test_Dll\bin\Debug\HE-Test_Dll.exe +C:\CAD\Git-WorkRepository\VisualStudio\_TEST\Test_UserControl.git\HE-Test_Dll\bin\Debug\HE-Test_Dll.pdb +C:\CAD\Git-WorkRepository\VisualStudio\_TEST\Test_UserControl.git\HE-Test_Dll\bin\Debug\testUserControl1.dll +C:\CAD\Git-WorkRepository\VisualStudio\_TEST\Test_UserControl.git\HE-Test_Dll\bin\Debug\testUserControl1.pdb +C:\CAD\Git-WorkRepository\VisualStudio\_TEST\Test_UserControl.git\HE-Test_Dll\obj\Debug\HE-Test_Dll.csproj.CopyComplete +C:\CAD\Git-WorkRepository\VisualStudio\_TEST\Test_UserControl.git\HE-Test_Dll\obj\Debug\HE-Test_Dll.exe +C:\CAD\Git-WorkRepository\VisualStudio\_TEST\Test_UserControl.git\HE-Test_Dll\obj\Debug\HE-Test_Dll.pdb diff --git a/HE-Test_Dll/obj/Debug/HE-Test_Dll.csproj.GenerateResource.cache b/HE-Test_Dll/obj/Debug/HE-Test_Dll.csproj.GenerateResource.cache new file mode 100644 index 0000000..c2b1d8f Binary files /dev/null and b/HE-Test_Dll/obj/Debug/HE-Test_Dll.csproj.GenerateResource.cache differ diff --git a/HE-Test_Dll/obj/Debug/HE-Test_Dll.exe b/HE-Test_Dll/obj/Debug/HE-Test_Dll.exe new file mode 100644 index 0000000..3c31334 Binary files /dev/null and b/HE-Test_Dll/obj/Debug/HE-Test_Dll.exe differ diff --git a/HE-Test_Dll/obj/Debug/HE-Test_Dll.pdb b/HE-Test_Dll/obj/Debug/HE-Test_Dll.pdb new file mode 100644 index 0000000..f50a1a7 Binary files /dev/null and b/HE-Test_Dll/obj/Debug/HE-Test_Dll.pdb differ diff --git a/HE-Test_Dll/obj/Debug/HE_Test_Dll.Form1.resources b/HE-Test_Dll/obj/Debug/HE_Test_Dll.Form1.resources new file mode 100644 index 0000000..6c05a97 Binary files /dev/null and b/HE-Test_Dll/obj/Debug/HE_Test_Dll.Form1.resources differ diff --git a/HE-Test_Dll/obj/Debug/HE_Test_Dll.Properties.Resources.resources b/HE-Test_Dll/obj/Debug/HE_Test_Dll.Properties.Resources.resources new file mode 100644 index 0000000..6c05a97 Binary files /dev/null and b/HE-Test_Dll/obj/Debug/HE_Test_Dll.Properties.Resources.resources differ diff --git a/HE-Test_Dll/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll b/HE-Test_Dll/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll new file mode 100644 index 0000000..e10f353 Binary files /dev/null and b/HE-Test_Dll/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll differ diff --git a/Test_UserControl.sln b/Test_UserControl.sln new file mode 100644 index 0000000..83b176d --- /dev/null +++ b/Test_UserControl.sln @@ -0,0 +1,31 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.6.33815.320 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Test_UserControl", "Test_UserControl\Test_UserControl.csproj", "{96B351D1-E8D2-4346-8525-3BDCBD562BF4}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HE-Test_Dll", "HE-Test_Dll\HE-Test_Dll.csproj", "{4381B7EE-3EC7-45DF-A719-7C83DA83F610}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {96B351D1-E8D2-4346-8525-3BDCBD562BF4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {96B351D1-E8D2-4346-8525-3BDCBD562BF4}.Debug|Any CPU.Build.0 = Debug|Any CPU + {96B351D1-E8D2-4346-8525-3BDCBD562BF4}.Release|Any CPU.ActiveCfg = Release|Any CPU + {96B351D1-E8D2-4346-8525-3BDCBD562BF4}.Release|Any CPU.Build.0 = Release|Any CPU + {4381B7EE-3EC7-45DF-A719-7C83DA83F610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {4381B7EE-3EC7-45DF-A719-7C83DA83F610}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4381B7EE-3EC7-45DF-A719-7C83DA83F610}.Release|Any CPU.ActiveCfg = Release|Any CPU + {4381B7EE-3EC7-45DF-A719-7C83DA83F610}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {E1E907C0-4832-44B0-AFF2-61AD21D7E447} + EndGlobalSection +EndGlobal diff --git a/Test_UserControl/Properties/AssemblyInfo.cs b/Test_UserControl/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..90b59f4 --- /dev/null +++ b/Test_UserControl/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// Allgemeine Informationen über eine Assembly werden über die folgenden +// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern, +// die einer Assembly zugeordnet sind. +[assembly: AssemblyTitle("Test_UserControl1")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("ENGEL")] +[assembly: AssemblyProduct("Test_UserControl1")] +[assembly: AssemblyCopyright("Copyright © 2023 by Eugen Höglinger")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Durch Festlegen von ComVisible auf FALSE werden die Typen in dieser Assembly +// für COM-Komponenten unsichtbar. Wenn Sie auf einen Typ in dieser Assembly von +// COM aus zugreifen müssen, sollten Sie das ComVisible-Attribut für diesen Typ auf "True" festlegen. +[assembly: ComVisible(false)] + +// Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird +[assembly: Guid("96b351d1-e8d2-4346-8525-3bdcbd562bf4")] + +// Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten: +// +// Hauptversion +// Nebenversion +// Buildnummer +// Revision +// +// Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden, +// indem Sie "*" wie unten gezeigt eingeben: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Test_UserControl/Properties/Resources.Designer.cs b/Test_UserControl/Properties/Resources.Designer.cs new file mode 100644 index 0000000..3a73340 --- /dev/null +++ b/Test_UserControl/Properties/Resources.Designer.cs @@ -0,0 +1,83 @@ +//------------------------------------------------------------------------------ +// +// Dieser Code wurde von einem Tool generiert. +// Laufzeitversion:4.0.30319.42000 +// +// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn +// der Code erneut generiert wird. +// +//------------------------------------------------------------------------------ + +namespace Test_UserControl.Properties { + using System; + + + /// + /// Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + /// + // Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert + // -Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert. + // Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen + // mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class Resources { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal Resources() { + } + + /// + /// Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager { + get { + if (object.ReferenceEquals(resourceMan, null)) { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Test_UserControl.Properties.Resources", typeof(Resources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + /// Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture { + get { + return resourceCulture; + } + set { + resourceCulture = value; + } + } + + /// + /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap Pfeil_oben { + get { + object obj = ResourceManager.GetObject("Pfeil_oben", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap Pfeil_unten { + get { + object obj = ResourceManager.GetObject("Pfeil_unten", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + } +} diff --git a/Test_UserControl/Properties/Resources.resx b/Test_UserControl/Properties/Resources.resx new file mode 100644 index 0000000..5ab05f5 --- /dev/null +++ b/Test_UserControl/Properties/Resources.resx @@ -0,0 +1,127 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + ..\Resources\Pfeil_unten.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\Pfeil_oben.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + \ No newline at end of file diff --git a/Test_UserControl/Resources/Pfeil_oben.png b/Test_UserControl/Resources/Pfeil_oben.png new file mode 100644 index 0000000..b256203 Binary files /dev/null and b/Test_UserControl/Resources/Pfeil_oben.png differ diff --git a/Test_UserControl/Resources/Pfeil_unten.png b/Test_UserControl/Resources/Pfeil_unten.png new file mode 100644 index 0000000..10ec1a8 Binary files /dev/null and b/Test_UserControl/Resources/Pfeil_unten.png differ diff --git a/Test_UserControl/Test_UserControl.csproj b/Test_UserControl/Test_UserControl.csproj new file mode 100644 index 0000000..a8cf516 --- /dev/null +++ b/Test_UserControl/Test_UserControl.csproj @@ -0,0 +1,79 @@ + + + + + Debug + AnyCPU + {96B351D1-E8D2-4346-8525-3BDCBD562BF4} + Library + Test_UserControl + testUserControl1 + v4.7.2 + 512 + true + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + + + + + + + + + + + False + bin\Debug\testUserControl1.dll + + + + + True + True + Resources.resx + + + UserControl + + + UserControl1.cs + + + + + + + ResXFileCodeGenerator + Resources.Designer.cs + + + UserControl1.cs + + + + + + + + + + \ No newline at end of file diff --git a/Test_UserControl/UserControl1.Designer.cs b/Test_UserControl/UserControl1.Designer.cs new file mode 100644 index 0000000..311c568 --- /dev/null +++ b/Test_UserControl/UserControl1.Designer.cs @@ -0,0 +1,123 @@ +namespace Test_UserControl +{ + partial class UserControl1 + { + /// + /// Erforderliche Designervariable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Verwendete Ressourcen bereinigen. + /// + /// True, wenn verwaltete Ressourcen gelöscht werden sollen; andernfalls False. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Vom Komponenten-Designer generierter Code + + /// + /// Erforderliche Methode für die Designerunterstützung. + /// Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden. + /// + private void InitializeComponent() + { + this.buttonDown = new System.Windows.Forms.Button(); + this.buttonUp = new System.Windows.Forms.Button(); + this.checkBoxEncrypt = new System.Windows.Forms.CheckBox(); + this.checkBoxDefault = new System.Windows.Forms.CheckBox(); + this.buttonAddSeperator = new System.Windows.Forms.Button(); + this.SuspendLayout(); + // + // buttonDown + // + this.buttonDown.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.buttonDown.BackgroundImage = global::Test_UserControl.Properties.Resources.Pfeil_unten; + this.buttonDown.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom; + this.buttonDown.Location = new System.Drawing.Point(0, 104); + this.buttonDown.Name = "buttonDown"; + this.buttonDown.Size = new System.Drawing.Size(90, 23); + this.buttonDown.TabIndex = 2; + this.buttonDown.UseVisualStyleBackColor = true; + this.buttonDown.Click += new System.EventHandler(this.buttonDown_Click); + // + // buttonUp + // + this.buttonUp.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.buttonUp.BackgroundImage = global::Test_UserControl.Properties.Resources.Pfeil_oben; + this.buttonUp.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom; + this.buttonUp.Location = new System.Drawing.Point(0, 0); + this.buttonUp.Name = "buttonUp"; + this.buttonUp.Size = new System.Drawing.Size(90, 23); + this.buttonUp.TabIndex = 1; + this.buttonUp.UseVisualStyleBackColor = true; + this.buttonUp.Click += new System.EventHandler(this.buttonUp_Click); + // + // checkBoxEncrypt + // + this.checkBoxEncrypt.AutoSize = true; + this.checkBoxEncrypt.Location = new System.Drawing.Point(0, 58); + this.checkBoxEncrypt.Name = "checkBoxEncrypt"; + this.checkBoxEncrypt.Size = new System.Drawing.Size(73, 17); + this.checkBoxEncrypt.TabIndex = 3; + this.checkBoxEncrypt.Text = "Chiffrieren"; + this.checkBoxEncrypt.UseVisualStyleBackColor = true; + this.checkBoxEncrypt.CheckedChanged += new System.EventHandler(this.checkBoxEncrypt_CheckedChanged); + // + // checkBoxDefault + // + this.checkBoxDefault.AutoSize = true; + this.checkBoxDefault.Location = new System.Drawing.Point(0, 81); + this.checkBoxDefault.Name = "checkBoxDefault"; + this.checkBoxDefault.Size = new System.Drawing.Size(69, 17); + this.checkBoxDefault.TabIndex = 0; + this.checkBoxDefault.Text = "Standard"; + this.checkBoxDefault.UseVisualStyleBackColor = true; + this.checkBoxDefault.CheckedChanged += new System.EventHandler(this.checkBoxDefault_CheckedChanged); + // + // buttonAddSeperator + // + this.buttonAddSeperator.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.buttonAddSeperator.Location = new System.Drawing.Point(0, 29); + this.buttonAddSeperator.Name = "buttonAddSeperator"; + this.buttonAddSeperator.Size = new System.Drawing.Size(90, 23); + this.buttonAddSeperator.TabIndex = 4; + this.buttonAddSeperator.Text = "Seperator dazu"; + this.buttonAddSeperator.UseVisualStyleBackColor = true; + this.buttonAddSeperator.Click += new System.EventHandler(this.buttonAddSeperator_Click); + // + // UserControl1 + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.buttonAddSeperator); + this.Controls.Add(this.checkBoxEncrypt); + this.Controls.Add(this.buttonDown); + this.Controls.Add(this.checkBoxDefault); + this.Controls.Add(this.buttonUp); + this.MaximumSize = new System.Drawing.Size(120, 170); + this.MinimumSize = new System.Drawing.Size(90, 127); + this.Name = "UserControl1"; + this.Size = new System.Drawing.Size(90, 127); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + private System.Windows.Forms.Button buttonUp; + private System.Windows.Forms.Button buttonDown; + private System.Windows.Forms.CheckBox checkBoxEncrypt; + private System.Windows.Forms.CheckBox checkBoxDefault; + private System.Windows.Forms.Button buttonAddSeperator; + } +} diff --git a/Test_UserControl/UserControl1.cs b/Test_UserControl/UserControl1.cs new file mode 100644 index 0000000..4fec078 --- /dev/null +++ b/Test_UserControl/UserControl1.cs @@ -0,0 +1,504 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Drawing; +using System.Data; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; +using System.IO; +using System.Reflection; +using System.Diagnostics; +using static System.Windows.Forms.VisualStyles.VisualStyleElement; + +namespace Test_UserControl +{ + //Verfügbarkeit + public enum Availability + { + Disabled, + Enabled + } + + //Sichtbarkeit + public enum Visibility + { + Invisible, + Visible + } + + public partial class UserControl1: UserControl + { + #region Version und Copyright + // Key und Copyright + static string dllName = Path.GetFileNameWithoutExtension(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase); //Den Programmnamen auslesen + static string dllVersion = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString(); + static object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyCopyrightAttribute), false); + static string copyright = GenerateCopyright(); + string icon = Application.StartupPath + "\\Info.bmp"; + //Assembly Datum und Zeit + static DateTime value = AssemblyDateTime(); + string date = value.ToShortDateString(); + string time = value.ToLongTimeString(); + private static DateTime AssemblyDateTime() + { + var version = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version; + var buildDateTime = new DateTime(2000, 1, 1).Add(new TimeSpan(TimeSpan.TicksPerDay * version.Build + TimeSpan.TicksPerSecond * 2 * version.Revision)); + //Tage seit dem 1. Januar 2000 und Sekunden seit Mitternacht, (multiplizier mit 2 ergibt das Original) + return buildDateTime; + } + + private static string CurrentYear() + { + DateTime dtn = DateTime.Now; + return dtn.Year.ToString(); + } + + private static string StartYear() + { + string startYear = ""; + if (((AssemblyCopyrightAttribute)attributes[0]).Copyright.Contains("Copyright © ")) + { + startYear = ((AssemblyCopyrightAttribute)attributes[0]).Copyright.Replace("Copyright © ", ""); + while (startYear.StartsWith(" ")) + { + startYear = startYear.Remove(0, 1); + } + startYear = startYear.Remove(startYear.IndexOf(" ")); + return startYear; + } + else + { + DateTime dtn = DateTime.Now; + return dtn.Year.ToString(); + } + } + + private static string GenerateCopyright() + { + string startYear = StartYear(); + string currentYear = CurrentYear(); + + if (startYear == currentYear) + { + return ((AssemblyCopyrightAttribute)attributes[0]).Copyright; + } + else + { + return ((AssemblyCopyrightAttribute)attributes[0]).Copyright.Replace(startYear, String.Concat(startYear, "-", currentYear)); + } + } + #endregion + + #region DLL-Info + /// + /// Contains the name of the dll file. + /// + public static string DllName { private set; get; } + + /// + /// Contains the version of the dll file. + /// + public static string DllVersion { private set; get; } + + /// + /// Contains the copyright notice. + /// + public static string Copyright { private set; get; } + + /// + /// Contains the name-, version- and copyright-information of the dll file. + /// + public static string[] DllInfo { private set; get; } + + private static void SetDllInfo() + { + //Name, Key und Copyright setzen + DllName = dllName; + DllVersion = dllVersion; + Copyright = copyright; + } + #endregion + + public event EventHandler ButtonUpClick; //Der Eventhandler + public event EventHandler ButtonDownClick; //Der Eventhandler + public event EventHandler ButtonAddSeparatorClick; //Der Eventhandler + public event EventHandler CheckboxEncryptCheck; //Der Eventhandler + public event EventHandler CheckboxStandardCheck; //Der Eventhandler + + /// + /// Generates a user control + /// + static UserControl1() + { + SetDllInfo(); //Name, Version und Copyright der DLL setzen + } + + public UserControl1() + { + SetDllInfo(); //Name, Version und Copyright der DLL setzen + InitializeComponent(); + } + + public int ButtonUpAvailability { set; get; } + public int ButtonUpVisibility { set; get; } + public int ButtonDownAvailability { set; get; } + public int ButtonDownVisibility { set; get; } + public int ButtonAddSeparatorAvailability { set; get; } + public int ButtonAddSeparatorVisibility { set; get; } + private int ButtonAddSeparatorPosY { set; get; } + public int CheckBoxEncryptAvailability { set; get; } + public int CheckBoxEncryptVisibility { set; get; } + public bool CheckBoxEncryptStatusSelected { set; get; } + private int CheckBoxEncryptPosY { set; get; } + public int CheckBoxStandardAvailability { set; get; } + public int CheckBoxStandardVisibility { set; get; } + public bool CheckBoxStandardStatusSelected { set; get; } + private int CheckBoxStandardPosY { set; get; } + public int SizeX { set; get; } + public int SizeY { set; get; } + public string PressedButton { get; set; } + + public void SetVisibility() + { + //Ungültige Werte korrigieren + CorrectInvalidSizeValues(); + + //Y-Position der Steuerelemente setzen + SetButtonAddSeparatorPositionY(); + SetCheckBoxEncryptPositionY(); + SetCheckBoxStandardPositionY(); + + //Verfügbarkeit der Steuerelemente setzen + SetButtonUpAvailability(); + SetButtonAddSeparatorAvailability(); + SetCheckBoxEncryptAvailability(); + SetCheckBoxStandardAvailability(); + SetButtonDownAvailability(); + + //Sichtbarkeit der Steuerelemente setzen + SetButtonUpVisibility(); + SetButtonAddSeparatorVisibility(); + SetCheckBoxEncryptVisibility(); + SetCheckBoxStandardVisibility(); + SetButtonDownVisibility(); + + //Die Selektion setzen + SetCheckBoxEncryptSetSelection(); + SetCheckBoxStandardSetSelection(); + //this.Refresh(); + } + + private void CorrectInvalidSizeValues() + { + if (SizeX < MinimumSize.Width) + { + SizeX = MinimumSize.Width; + } + + if (SizeX > MaximumSize.Width) + { + SizeX = MaximumSize.Width; + } + + if (SizeY < MinimumSize.Height) + { + SizeX = MinimumSize.Height; + } + + if (SizeY > MaximumSize.Height) + { + SizeX = MaximumSize.Height; + } + } + + private void SetButtonAddSeparatorPositionY() + { + if (CheckBoxEncryptAvailability == 1 & CheckBoxStandardAvailability == 1) + { + //Wenn beide Checkboxen sichtbar sind + this.buttonAddSeperator.Location = new System.Drawing.Point(0, 29 + DiffY(MinimumSize.Height, SizeY)); + } + else if (CheckBoxEncryptAvailability == 0 & CheckBoxStandardAvailability == 0) + { + //Wenn keine Checkbox sichtbar ist + this.buttonAddSeperator.Location = new System.Drawing.Point(0, 58 + DiffY(MinimumSize.Height, SizeY)); + } + else + { + //Wenn eine Checkbox sichtbar ist + this.buttonAddSeperator.Location = new System.Drawing.Point(0, 47 + DiffY(MinimumSize.Height, SizeY)); + } + } + + private void SetCheckBoxEncryptPositionY() + { + if (ButtonAddSeparatorAvailability == 1 & CheckBoxStandardAvailability == 1) + { + //Wenn der Button und eine Checkboxen sichtbar sind + this.checkBoxEncrypt.Location = new System.Drawing.Point(0, 58 + DiffY(MinimumSize.Height, SizeY)); + } + else if (ButtonAddSeparatorAvailability == 0 & CheckBoxStandardAvailability == 0) + { + //Wenn kein Button und keine Checkbox sichtbar ist + this.checkBoxEncrypt.Location = new System.Drawing.Point(0, 58 + DiffY(MinimumSize.Height, SizeY)); + } + else if (ButtonAddSeparatorAvailability == 1 & CheckBoxStandardAvailability == 0) + { + //Wenn der Button und keine Checkbox sichtbar ist + this.checkBoxEncrypt.Location = new System.Drawing.Point(0, 70 + DiffY(MinimumSize.Height, SizeY)); + } + else + { + //Wenn kein Button und eine Checkbox sichtbar ist + this.checkBoxEncrypt.Location = new System.Drawing.Point(0, 47 + DiffY(MinimumSize.Height, SizeY)); + } + } + + private void SetCheckBoxStandardPositionY() + { + if (ButtonAddSeparatorAvailability == 1 & CheckBoxEncryptAvailability == 1) + { + //Wenn der Button und eine Checkboxen sichtbar sind + this.checkBoxDefault.Location = new System.Drawing.Point(0, 81 + DiffY(MinimumSize.Height, SizeY)); + } + else if (ButtonAddSeparatorAvailability == 0 & CheckBoxEncryptAvailability == 0) + { + //Wenn kein Button und keine Checkbox sichtbar ist + this.checkBoxDefault.Location = new System.Drawing.Point(0, 58 + DiffY(MinimumSize.Height, SizeY)); + } + else if (ButtonAddSeparatorAvailability == 1 & CheckBoxEncryptAvailability == 0) + { + //Wenn der Button und keine Checkbox sichtbar ist + this.checkBoxDefault.Location = new System.Drawing.Point(0, 70 + DiffY(MinimumSize.Height, SizeY)); + } + else + { + //Wenn kein Button und eine Checkbox sichtbar ist + this.checkBoxDefault.Location = new System.Drawing.Point(0, 47 + DiffY(MinimumSize.Height, SizeY)); + } + } + + private int DiffY(int minY, int currentY) + { + double diff = 0; + + diff = Convert.ToDouble(currentY) - Convert.ToDouble(minY); + + if (diff <= 0) + { + return 0; + } + return Convert.ToInt32(diff / 2); + } + + private void SetButtonUpAvailability() + { + if (ButtonUpAvailability == 1) + { + buttonUp.Enabled = true; + } + else + { + buttonUp.Enabled = false; + } + } + + private void SetButtonAddSeparatorAvailability() + { + if (ButtonAddSeparatorAvailability == 1) + { + buttonAddSeperator.Enabled = true; + } + else + { + buttonAddSeperator.Enabled = false; + } + } + + private void SetCheckBoxEncryptAvailability() + { + if (CheckBoxEncryptAvailability == 1) + { + checkBoxEncrypt.Enabled = true; + } + else + { + checkBoxEncrypt.Enabled = false; + } + } + + private void SetCheckBoxStandardAvailability() + { + if (CheckBoxStandardAvailability == 1) + { + checkBoxDefault.Enabled = true; + } + else + { + checkBoxDefault.Enabled = false; + } + } + + private void SetButtonDownAvailability() + { + if (ButtonDownAvailability == 1) + { + buttonDown.Enabled = true; + } + else + { + buttonDown.Enabled = false; + } + } + + private void SetButtonUpVisibility() + { + if (ButtonUpVisibility == 1) + { + buttonUp.Visible = true; + } + else + { + buttonUp.Visible = false; + } + } + + private void SetButtonAddSeparatorVisibility() + { + if (ButtonAddSeparatorVisibility == 1) + { + buttonAddSeperator.Visible = true; + } + else + { + buttonAddSeperator.Visible = false; + } + } + + private void SetCheckBoxEncryptVisibility() + { + if (CheckBoxEncryptVisibility == 1) + { + checkBoxEncrypt.Visible = true; + } + else + { + checkBoxEncrypt.Visible = false; + } + } + + private void SetCheckBoxStandardVisibility() + { + if (CheckBoxStandardVisibility == 1) + { + checkBoxDefault.Visible = true; + } + else + { + checkBoxDefault.Visible = false; + } + } + + private void SetButtonDownVisibility() + { + if (ButtonDownVisibility == 1) + { + buttonDown.Visible = true; + } + else + { + buttonDown.Visible = false; + } + } + + private void SetCheckBoxEncryptSetSelection() + { + if (CheckBoxEncryptStatusSelected == true) + { + checkBoxEncrypt.Checked = true; //CheckBox ist selektiert + } + else + { + checkBoxEncrypt.Checked = false; //CheckBox ist deselektiert + CheckBoxEncryptStatusSelected = false; //Zur Sicherheit auf einen definierten Wert setzen + } + checkBoxEncrypt.Refresh(); + } + + private void SetCheckBoxStandardSetSelection() + { + if (CheckBoxStandardStatusSelected == true) + { + checkBoxDefault.Checked = true; //CheckBox ist selektiert + } + else + { + checkBoxDefault.Checked = false; //CheckBox ist deselektiert + CheckBoxStandardStatusSelected = false; //Zur Sicherheit auf einen definierten Wert setzen + } + } + + private void buttonUp_Click(object sender, EventArgs e) + { + OnButtonUpClick(); + } + + private void buttonDown_Click(object sender, EventArgs e) + { + OnButtonDownClick(); + } + + private void buttonAddSeperator_Click(object sender, EventArgs e) + { + OnButtonAddSeparatorClick(); + } + + private void checkBoxEncrypt_CheckedChanged(object sender, EventArgs e) + { + OnCheckboxEncryptCheck(); //Ereignis ausführen + + //Checkbox Status setzen + CheckBoxEncryptStatusSelected = checkBoxEncrypt.Checked; + } + + private void checkBoxDefault_CheckedChanged(object sender, EventArgs e) + { + OnCheckboxStandardCheck(); //Ereignis ausführen + + //Checkbox Status setzen + CheckBoxStandardStatusSelected = checkBoxDefault.Checked; + } + + protected void OnButtonUpClick() + { + //Registrierte Ereignisbehandlungsmethode ausführen + ButtonUpClick?.Invoke(this, EventArgs.Empty); + } + + protected void OnButtonDownClick() + { + //Registrierte Ereignisbehandlungsmethode ausführen + ButtonDownClick?.Invoke(this, EventArgs.Empty); + } + + protected void OnButtonAddSeparatorClick() + { + //Registrierte Ereignisbehandlungsmethode ausführen + ButtonAddSeparatorClick?.Invoke(this, EventArgs.Empty); + } + + protected void OnCheckboxEncryptCheck() + { + //Registrierte Ereignisbehandlungsmethode ausführen + CheckboxEncryptCheck?.Invoke(this, EventArgs.Empty); + } + + protected void OnCheckboxStandardCheck() + { + //Registrierte Ereignisbehandlungsmethode ausführen + CheckboxStandardCheck?.Invoke(this, EventArgs.Empty); + } + } +} diff --git a/Test_UserControl/UserControl1.resx b/Test_UserControl/UserControl1.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/Test_UserControl/UserControl1.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/Test_UserControl/bin/Debug/testUserControl1.dll b/Test_UserControl/bin/Debug/testUserControl1.dll new file mode 100644 index 0000000..65c4c4a Binary files /dev/null and b/Test_UserControl/bin/Debug/testUserControl1.dll differ diff --git a/Test_UserControl/bin/Debug/testUserControl1.pdb b/Test_UserControl/bin/Debug/testUserControl1.pdb new file mode 100644 index 0000000..0fff589 Binary files /dev/null and b/Test_UserControl/bin/Debug/testUserControl1.pdb differ diff --git a/Test_UserControl/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs b/Test_UserControl/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs new file mode 100644 index 0000000..3871b18 --- /dev/null +++ b/Test_UserControl/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs @@ -0,0 +1,4 @@ +// +using System; +using System.Reflection; +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.7.2", FrameworkDisplayName = ".NET Framework 4.7.2")] diff --git a/Test_UserControl/obj/Debug/DesignTimeResolveAssemblyReferences.cache b/Test_UserControl/obj/Debug/DesignTimeResolveAssemblyReferences.cache new file mode 100644 index 0000000..2d21f8d Binary files /dev/null and b/Test_UserControl/obj/Debug/DesignTimeResolveAssemblyReferences.cache differ diff --git a/Test_UserControl/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/Test_UserControl/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000..ecad978 Binary files /dev/null and b/Test_UserControl/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/Test_UserControl/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll b/Test_UserControl/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll new file mode 100644 index 0000000..0284463 Binary files /dev/null and b/Test_UserControl/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll differ diff --git a/Test_UserControl/obj/Debug/Test_UserControl.Properties.Resources.resources b/Test_UserControl/obj/Debug/Test_UserControl.Properties.Resources.resources new file mode 100644 index 0000000..583c69e Binary files /dev/null and b/Test_UserControl/obj/Debug/Test_UserControl.Properties.Resources.resources differ diff --git a/Test_UserControl/obj/Debug/Test_UserControl.UserControl1.resources b/Test_UserControl/obj/Debug/Test_UserControl.UserControl1.resources new file mode 100644 index 0000000..6c05a97 Binary files /dev/null and b/Test_UserControl/obj/Debug/Test_UserControl.UserControl1.resources differ diff --git a/Test_UserControl/obj/Debug/Test_UserControl.csproj.AssemblyReference.cache b/Test_UserControl/obj/Debug/Test_UserControl.csproj.AssemblyReference.cache new file mode 100644 index 0000000..2c4b42f Binary files /dev/null and b/Test_UserControl/obj/Debug/Test_UserControl.csproj.AssemblyReference.cache differ diff --git a/Test_UserControl/obj/Debug/Test_UserControl.csproj.CoreCompileInputs.cache b/Test_UserControl/obj/Debug/Test_UserControl.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000..b407cc2 --- /dev/null +++ b/Test_UserControl/obj/Debug/Test_UserControl.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +cc2ae8afbe7610ef6290c92827e7e8e121791128 diff --git a/Test_UserControl/obj/Debug/Test_UserControl.csproj.FileListAbsolute.txt b/Test_UserControl/obj/Debug/Test_UserControl.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..d3b95fc --- /dev/null +++ b/Test_UserControl/obj/Debug/Test_UserControl.csproj.FileListAbsolute.txt @@ -0,0 +1,9 @@ +C:\CAD\Git-WorkRepository\VisualStudio\_TEST\Test_UserControl.git\Test_UserControl\obj\Debug\Test_UserControl.csproj.AssemblyReference.cache +C:\CAD\Git-WorkRepository\VisualStudio\_TEST\Test_UserControl.git\Test_UserControl\obj\Debug\Test_UserControl.Properties.Resources.resources +C:\CAD\Git-WorkRepository\VisualStudio\_TEST\Test_UserControl.git\Test_UserControl\obj\Debug\Test_UserControl.UserControl1.resources +C:\CAD\Git-WorkRepository\VisualStudio\_TEST\Test_UserControl.git\Test_UserControl\obj\Debug\Test_UserControl.csproj.GenerateResource.cache +C:\CAD\Git-WorkRepository\VisualStudio\_TEST\Test_UserControl.git\Test_UserControl\obj\Debug\Test_UserControl.csproj.CoreCompileInputs.cache +C:\CAD\Git-WorkRepository\VisualStudio\_TEST\Test_UserControl.git\Test_UserControl\bin\Debug\testUserControl1.pdb +C:\CAD\Git-WorkRepository\VisualStudio\_TEST\Test_UserControl.git\Test_UserControl\obj\Debug\testUserControl1.dll +C:\CAD\Git-WorkRepository\VisualStudio\_TEST\Test_UserControl.git\Test_UserControl\obj\Debug\testUserControl1.pdb +C:\CAD\Git-WorkRepository\VisualStudio\_TEST\Test_UserControl.git\Test_UserControl\obj\Debug\Test_UserControl.csproj.CopyComplete diff --git a/Test_UserControl/obj/Debug/Test_UserControl.csproj.GenerateResource.cache b/Test_UserControl/obj/Debug/Test_UserControl.csproj.GenerateResource.cache new file mode 100644 index 0000000..bb62389 Binary files /dev/null and b/Test_UserControl/obj/Debug/Test_UserControl.csproj.GenerateResource.cache differ diff --git a/Test_UserControl/obj/Debug/testUserControl1.dll b/Test_UserControl/obj/Debug/testUserControl1.dll new file mode 100644 index 0000000..65c4c4a Binary files /dev/null and b/Test_UserControl/obj/Debug/testUserControl1.dll differ diff --git a/Test_UserControl/obj/Debug/testUserControl1.pdb b/Test_UserControl/obj/Debug/testUserControl1.pdb new file mode 100644 index 0000000..0fff589 Binary files /dev/null and b/Test_UserControl/obj/Debug/testUserControl1.pdb differ