diff --git a/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling.sln b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling.sln new file mode 100644 index 0000000..92fc453 --- /dev/null +++ b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.28307.271 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MySQLDatabaseTilkobling", "MySQLDatabaseTilkobling\MySQLDatabaseTilkobling.csproj", "{F32D0640-685A-42BE-99C5-5F12BF59E914}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {F32D0640-685A-42BE-99C5-5F12BF59E914}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F32D0640-685A-42BE-99C5-5F12BF59E914}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F32D0640-685A-42BE-99C5-5F12BF59E914}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F32D0640-685A-42BE-99C5-5F12BF59E914}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {28E4BE95-28A0-4910-AF0B-D2A34B54CC6D} + EndGlobalSection +EndGlobal diff --git a/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/App.config b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/App.config new file mode 100644 index 0000000..731f6de --- /dev/null +++ b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/App.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/DatabaseConnection.cs b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/DatabaseConnection.cs new file mode 100644 index 0000000..15639fd --- /dev/null +++ b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/DatabaseConnection.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using MySql.Data.MySqlClient; + +namespace MySQLDatabaseTilkobling +{ + class DatabaseConnection + { + // Database server, brukernavn, passord og databasenavn + // `server=localhost` definerer hvilken server du skal koble til. + // `user id=root` definerer brukeren som vi skal koble til serveren med. For enkelthetens skyld bruker jeg "root", men i et produksjonssystem bør dette være en egen bruker. + // `password=root123` er passordet til brukeren vi bruker + // `database=student2018` er databasenavnet + MySqlConnection connectionString = new MySqlConnection("server=localhost;user id=root;password=root123;database=student2018"); + + // Åpner tilkoblingen (og holder den oppe) til MySQL server + public void OpenConnection() + { + connectionString.Open(); + } + + // "Lukker" (avslutter) tilkoblingen til MySQL server + public void CloseConnection() + { + connectionString.Close(); + } + } +} diff --git a/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/Form1.Designer.cs b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/Form1.Designer.cs new file mode 100644 index 0000000..38d61d7 --- /dev/null +++ b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/Form1.Designer.cs @@ -0,0 +1,40 @@ +namespace MySQLDatabaseTilkobling +{ + partial class Form1 + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(800, 450); + this.Text = "Form1"; + } + + #endregion + } +} + diff --git a/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/Form1.cs b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/Form1.cs new file mode 100644 index 0000000..a6a79d8 --- /dev/null +++ b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/Form1.cs @@ -0,0 +1,20 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace MySQLDatabaseTilkobling +{ + public partial class Form1 : Form + { + public Form1() + { + InitializeComponent(); + } + } +} diff --git a/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling.csproj b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling.csproj new file mode 100644 index 0000000..f8ca90f --- /dev/null +++ b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling.csproj @@ -0,0 +1,85 @@ + + + + + Debug + AnyCPU + {F32D0640-685A-42BE-99C5-5F12BF59E914} + WinExe + MySQLDatabaseTilkobling + MySQLDatabaseTilkobling + v4.6.1 + 512 + true + true + + + AnyCPU + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + AnyCPU + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + False + ..\..\..\..\Program Files (x86)\MySQL\Connector NET 8.0\Assemblies\v4.5.2\MySql.Data.dll + + + + + + + + + + + + + + + + + Form + + + Form1.cs + + + + + ResXFileCodeGenerator + Resources.Designer.cs + Designer + + + True + Resources.resx + + + SettingsSingleFileGenerator + Settings.Designer.cs + + + True + Settings.settings + True + + + + + + + \ No newline at end of file diff --git a/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/Program.cs b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/Program.cs new file mode 100644 index 0000000..666463f --- /dev/null +++ b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/Program.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace MySQLDatabaseTilkobling +{ + static class Program + { + /// + /// The main entry point for the application. + /// + [STAThread] + static void Main() + { + Application.EnableVisualStyles(); + Application.SetCompatibleTextRenderingDefault(false); + Application.Run(new Form1()); + } + } +} diff --git a/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/Properties/AssemblyInfo.cs b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..c2a4ddd --- /dev/null +++ b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("MySQLDatabaseTilkobling")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("MySQLDatabaseTilkobling")] +[assembly: AssemblyCopyright("Copyright © 2019")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("f32d0640-685a-42be-99c5-5f12bf59e914")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/Properties/Resources.Designer.cs b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/Properties/Resources.Designer.cs new file mode 100644 index 0000000..ca26d65 --- /dev/null +++ b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/Properties/Resources.Designer.cs @@ -0,0 +1,71 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace MySQLDatabaseTilkobling.Properties +{ + + + /// + /// A strongly-typed resource class, for looking up localized strings, etc. + /// + // This class was auto-generated by the StronglyTypedResourceBuilder + // class via a tool like ResGen or Visual Studio. + // To add or remove a member, edit your .ResX file then rerun ResGen + // with the /str option, or rebuild your VS project. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.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() + { + } + + /// + /// Returns the cached ResourceManager instance used by this class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager + { + get + { + if ((resourceMan == null)) + { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("MySQLDatabaseTilkobling.Properties.Resources", typeof(Resources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Overrides the current thread's CurrentUICulture property for all + /// resource lookups using this strongly typed resource class. + /// + [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/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/Properties/Resources.resx b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/Properties/Resources.resx new file mode 100644 index 0000000..af7dbeb --- /dev/null +++ b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/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/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/Properties/Settings.Designer.cs b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/Properties/Settings.Designer.cs new file mode 100644 index 0000000..3b965e4 --- /dev/null +++ b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/Properties/Settings.Designer.cs @@ -0,0 +1,30 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace MySQLDatabaseTilkobling.Properties +{ + + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.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/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/Properties/Settings.settings b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/Properties/Settings.settings new file mode 100644 index 0000000..3964565 --- /dev/null +++ b/MySQLDatabaseTilkobling/MySQLDatabaseTilkobling/Properties/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/OvingsOppgaveTre/Icon.ico b/OvingsOppgaveTre/Icon.ico new file mode 100644 index 0000000..dd65366 Binary files /dev/null and b/OvingsOppgaveTre/Icon.ico differ diff --git a/OvingsOppgaveTre/OvingsOppgaveTre.sln b/OvingsOppgaveTre/OvingsOppgaveTre.sln new file mode 100644 index 0000000..348da18 --- /dev/null +++ b/OvingsOppgaveTre/OvingsOppgaveTre.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.28307.271 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OvingsOppgaveTre", "OvingsOppgaveTre\OvingsOppgaveTre.csproj", "{9CC338A5-69E5-4E9D-B854-762BF17FBE51}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {9CC338A5-69E5-4E9D-B854-762BF17FBE51}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {9CC338A5-69E5-4E9D-B854-762BF17FBE51}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9CC338A5-69E5-4E9D-B854-762BF17FBE51}.Release|Any CPU.ActiveCfg = Release|Any CPU + {9CC338A5-69E5-4E9D-B854-762BF17FBE51}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {37DA5709-9F95-4009-9305-354680C11323} + EndGlobalSection +EndGlobal diff --git a/OvingsOppgaveTre/OvingsOppgaveTre/App.config b/OvingsOppgaveTre/OvingsOppgaveTre/App.config new file mode 100644 index 0000000..731f6de --- /dev/null +++ b/OvingsOppgaveTre/OvingsOppgaveTre/App.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/OvingsOppgaveTre/OvingsOppgaveTre/Icon.ico b/OvingsOppgaveTre/OvingsOppgaveTre/Icon.ico new file mode 100644 index 0000000..dd65366 Binary files /dev/null and b/OvingsOppgaveTre/OvingsOppgaveTre/Icon.ico differ diff --git a/OvingsOppgaveTre/OvingsOppgaveTre/OvingsOppgave.Designer.cs b/OvingsOppgaveTre/OvingsOppgaveTre/OvingsOppgave.Designer.cs new file mode 100644 index 0000000..7b96ecf --- /dev/null +++ b/OvingsOppgaveTre/OvingsOppgaveTre/OvingsOppgave.Designer.cs @@ -0,0 +1,439 @@ +namespace OvingsOppgaveTre +{ + partial class OvingsOppgave + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(OvingsOppgave)); + this.txtExVat = new System.Windows.Forms.TextBox(); + this.lblExVat = new System.Windows.Forms.Label(); + this.lblIncVat = new System.Windows.Forms.Label(); + this.txtIncVat = new System.Windows.Forms.TextBox(); + this.lblOppgaveEn = new System.Windows.Forms.Label(); + this.lblOppgaveTo = new System.Windows.Forms.Label(); + this.lblOhmsR = new System.Windows.Forms.Label(); + this.txtOhmsR = new System.Windows.Forms.TextBox(); + this.txtOhmsI = new System.Windows.Forms.TextBox(); + this.lblOhmsI = new System.Windows.Forms.Label(); + this.btnOhmsCalculate = new System.Windows.Forms.Button(); + this.txtOhmsU = new System.Windows.Forms.TextBox(); + this.lblOppgaveTre = new System.Windows.Forms.Label(); + this.txtCooperResult = new System.Windows.Forms.TextBox(); + this.label2 = new System.Windows.Forms.Label(); + this.lblCoopersDistance = new System.Windows.Forms.Label(); + this.txtDistance = new System.Windows.Forms.TextBox(); + this.lblOppgaveFire = new System.Windows.Forms.Label(); + this.lblTotalSec = new System.Windows.Forms.Label(); + this.txtTotalSec = new System.Windows.Forms.TextBox(); + this.btnSplit = new System.Windows.Forms.Button(); + this.lblMinutes = new System.Windows.Forms.Label(); + this.txtMinutes = new System.Windows.Forms.TextBox(); + this.lblSeconds = new System.Windows.Forms.Label(); + this.txtSeconds = new System.Windows.Forms.TextBox(); + this.txtHeight = new System.Windows.Forms.TextBox(); + this.label1 = new System.Windows.Forms.Label(); + this.lblHeight = new System.Windows.Forms.Label(); + this.lblWeight = new System.Windows.Forms.Label(); + this.txtWeight = new System.Windows.Forms.TextBox(); + this.btnBmi = new System.Windows.Forms.Button(); + this.lblBmi = new System.Windows.Forms.Label(); + this.txtBmi = new System.Windows.Forms.TextBox(); + this.SuspendLayout(); + // + // txtExVat + // + this.txtExVat.Location = new System.Drawing.Point(167, 10); + this.txtExVat.Name = "txtExVat"; + this.txtExVat.Size = new System.Drawing.Size(100, 20); + this.txtExVat.TabIndex = 0; + this.txtExVat.TextChanged += new System.EventHandler(this.txtExVat_TextChanged); + // + // lblExVat + // + this.lblExVat.AutoSize = true; + this.lblExVat.Location = new System.Drawing.Point(88, 13); + this.lblExVat.Name = "lblExVat"; + this.lblExVat.Size = new System.Drawing.Size(72, 13); + this.lblExVat.TabIndex = 1; + this.lblExVat.Text = "Pris eksl. mva"; + // + // lblIncVat + // + this.lblIncVat.AutoSize = true; + this.lblIncVat.Location = new System.Drawing.Point(89, 39); + this.lblIncVat.Name = "lblIncVat"; + this.lblIncVat.Size = new System.Drawing.Size(69, 13); + this.lblIncVat.TabIndex = 2; + this.lblIncVat.Text = "Pris inkl. mva"; + // + // txtIncVat + // + this.txtIncVat.Location = new System.Drawing.Point(167, 36); + this.txtIncVat.Name = "txtIncVat"; + this.txtIncVat.Size = new System.Drawing.Size(100, 20); + this.txtIncVat.TabIndex = 1; + this.txtIncVat.TextChanged += new System.EventHandler(this.txtIncVat_TextChanged); + // + // lblOppgaveEn + // + this.lblOppgaveEn.AutoSize = true; + this.lblOppgaveEn.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lblOppgaveEn.Location = new System.Drawing.Point(13, 13); + this.lblOppgaveEn.Name = "lblOppgaveEn"; + this.lblOppgaveEn.Size = new System.Drawing.Size(69, 13); + this.lblOppgaveEn.TabIndex = 3; + this.lblOppgaveEn.Text = "Oppgave 1"; + // + // lblOppgaveTo + // + this.lblOppgaveTo.AutoSize = true; + this.lblOppgaveTo.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lblOppgaveTo.Location = new System.Drawing.Point(13, 73); + this.lblOppgaveTo.Name = "lblOppgaveTo"; + this.lblOppgaveTo.Size = new System.Drawing.Size(69, 13); + this.lblOppgaveTo.TabIndex = 4; + this.lblOppgaveTo.Text = "Oppgave 2"; + // + // lblOhmsR + // + this.lblOhmsR.AutoSize = true; + this.lblOhmsR.Location = new System.Drawing.Point(89, 73); + this.lblOhmsR.Name = "lblOhmsR"; + this.lblOhmsR.Size = new System.Drawing.Size(15, 13); + this.lblOhmsR.TabIndex = 5; + this.lblOhmsR.Text = "R"; + // + // txtOhmsR + // + this.txtOhmsR.Location = new System.Drawing.Point(110, 70); + this.txtOhmsR.Name = "txtOhmsR"; + this.txtOhmsR.Size = new System.Drawing.Size(100, 20); + this.txtOhmsR.TabIndex = 2; + // + // txtOhmsI + // + this.txtOhmsI.Location = new System.Drawing.Point(110, 96); + this.txtOhmsI.Name = "txtOhmsI"; + this.txtOhmsI.Size = new System.Drawing.Size(100, 20); + this.txtOhmsI.TabIndex = 3; + // + // lblOhmsI + // + this.lblOhmsI.AutoSize = true; + this.lblOhmsI.Location = new System.Drawing.Point(89, 99); + this.lblOhmsI.Name = "lblOhmsI"; + this.lblOhmsI.Size = new System.Drawing.Size(10, 13); + this.lblOhmsI.TabIndex = 7; + this.lblOhmsI.Text = "I"; + // + // btnOhmsCalculate + // + this.btnOhmsCalculate.Location = new System.Drawing.Point(216, 68); + this.btnOhmsCalculate.Name = "btnOhmsCalculate"; + this.btnOhmsCalculate.Size = new System.Drawing.Size(75, 23); + this.btnOhmsCalculate.TabIndex = 4; + this.btnOhmsCalculate.Text = "Beregn U"; + this.btnOhmsCalculate.UseVisualStyleBackColor = true; + this.btnOhmsCalculate.Click += new System.EventHandler(this.btnOhmsCalculate_Click); + // + // txtOhmsU + // + this.txtOhmsU.Location = new System.Drawing.Point(297, 70); + this.txtOhmsU.Name = "txtOhmsU"; + this.txtOhmsU.ReadOnly = true; + this.txtOhmsU.Size = new System.Drawing.Size(100, 20); + this.txtOhmsU.TabIndex = 5; + // + // lblOppgaveTre + // + this.lblOppgaveTre.AutoSize = true; + this.lblOppgaveTre.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lblOppgaveTre.Location = new System.Drawing.Point(13, 126); + this.lblOppgaveTre.Name = "lblOppgaveTre"; + this.lblOppgaveTre.Size = new System.Drawing.Size(69, 13); + this.lblOppgaveTre.TabIndex = 12; + this.lblOppgaveTre.Text = "Oppgave 3"; + // + // txtCooperResult + // + this.txtCooperResult.Location = new System.Drawing.Point(191, 149); + this.txtCooperResult.Name = "txtCooperResult"; + this.txtCooperResult.ReadOnly = true; + this.txtCooperResult.Size = new System.Drawing.Size(100, 20); + this.txtCooperResult.TabIndex = 9; + // + // label2 + // + this.label2.AutoSize = true; + this.label2.Location = new System.Drawing.Point(89, 152); + this.label2.Name = "label2"; + this.label2.Size = new System.Drawing.Size(95, 13); + this.label2.TabIndex = 11; + this.label2.Text = "Resultat (VO2max)"; + // + // lblCoopersDistance + // + this.lblCoopersDistance.AutoSize = true; + this.lblCoopersDistance.Location = new System.Drawing.Point(88, 126); + this.lblCoopersDistance.Name = "lblCoopersDistance"; + this.lblCoopersDistance.Size = new System.Drawing.Size(97, 13); + this.lblCoopersDistance.TabIndex = 10; + this.lblCoopersDistance.Text = "Distanse på 12 min"; + // + // txtDistance + // + this.txtDistance.Location = new System.Drawing.Point(191, 123); + this.txtDistance.Name = "txtDistance"; + this.txtDistance.Size = new System.Drawing.Size(100, 20); + this.txtDistance.TabIndex = 8; + this.txtDistance.TextChanged += new System.EventHandler(this.txtDistance_TextChanged); + // + // lblOppgaveFire + // + this.lblOppgaveFire.AutoSize = true; + this.lblOppgaveFire.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lblOppgaveFire.Location = new System.Drawing.Point(12, 184); + this.lblOppgaveFire.Name = "lblOppgaveFire"; + this.lblOppgaveFire.Size = new System.Drawing.Size(69, 13); + this.lblOppgaveFire.TabIndex = 17; + this.lblOppgaveFire.Text = "Oppgave 4"; + // + // lblTotalSec + // + this.lblTotalSec.AutoSize = true; + this.lblTotalSec.Location = new System.Drawing.Point(87, 184); + this.lblTotalSec.Name = "lblTotalSec"; + this.lblTotalSec.Size = new System.Drawing.Size(79, 13); + this.lblTotalSec.TabIndex = 15; + this.lblTotalSec.Text = "Total antall sek"; + // + // txtTotalSec + // + this.txtTotalSec.Location = new System.Drawing.Point(190, 181); + this.txtTotalSec.Name = "txtTotalSec"; + this.txtTotalSec.Size = new System.Drawing.Size(100, 20); + this.txtTotalSec.TabIndex = 13; + // + // btnSplit + // + this.btnSplit.Location = new System.Drawing.Point(92, 201); + this.btnSplit.Name = "btnSplit"; + this.btnSplit.Size = new System.Drawing.Size(75, 23); + this.btnSplit.TabIndex = 18; + this.btnSplit.Text = "Splitt"; + this.btnSplit.UseVisualStyleBackColor = true; + this.btnSplit.Click += new System.EventHandler(this.btnSplit_Click); + // + // lblMinutes + // + this.lblMinutes.AutoSize = true; + this.lblMinutes.Location = new System.Drawing.Point(318, 184); + this.lblMinutes.Name = "lblMinutes"; + this.lblMinutes.Size = new System.Drawing.Size(48, 13); + this.lblMinutes.TabIndex = 20; + this.lblMinutes.Text = "Minutter:"; + // + // txtMinutes + // + this.txtMinutes.Location = new System.Drawing.Point(380, 181); + this.txtMinutes.Name = "txtMinutes"; + this.txtMinutes.ReadOnly = true; + this.txtMinutes.Size = new System.Drawing.Size(100, 20); + this.txtMinutes.TabIndex = 19; + // + // lblSeconds + // + this.lblSeconds.AutoSize = true; + this.lblSeconds.Location = new System.Drawing.Point(318, 209); + this.lblSeconds.Name = "lblSeconds"; + this.lblSeconds.Size = new System.Drawing.Size(56, 13); + this.lblSeconds.TabIndex = 22; + this.lblSeconds.Text = "Sekunder:"; + // + // txtSeconds + // + this.txtSeconds.Location = new System.Drawing.Point(380, 206); + this.txtSeconds.Name = "txtSeconds"; + this.txtSeconds.ReadOnly = true; + this.txtSeconds.Size = new System.Drawing.Size(100, 20); + this.txtSeconds.TabIndex = 21; + // + // txtHeight + // + this.txtHeight.Location = new System.Drawing.Point(190, 239); + this.txtHeight.Name = "txtHeight"; + this.txtHeight.Size = new System.Drawing.Size(100, 20); + this.txtHeight.TabIndex = 23; + // + // label1 + // + this.label1.AutoSize = true; + this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label1.Location = new System.Drawing.Point(12, 242); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(69, 13); + this.label1.TabIndex = 26; + this.label1.Text = "Oppgave 5"; + // + // lblHeight + // + this.lblHeight.AutoSize = true; + this.lblHeight.Location = new System.Drawing.Point(89, 242); + this.lblHeight.Name = "lblHeight"; + this.lblHeight.Size = new System.Drawing.Size(78, 13); + this.lblHeight.TabIndex = 27; + this.lblHeight.Text = "Høyde (i meter)"; + // + // lblWeight + // + this.lblWeight.AutoSize = true; + this.lblWeight.Location = new System.Drawing.Point(89, 273); + this.lblWeight.Name = "lblWeight"; + this.lblWeight.Size = new System.Drawing.Size(29, 13); + this.lblWeight.TabIndex = 28; + this.lblWeight.Text = "Vekt"; + // + // txtWeight + // + this.txtWeight.Location = new System.Drawing.Point(190, 273); + this.txtWeight.Name = "txtWeight"; + this.txtWeight.Size = new System.Drawing.Size(100, 20); + this.txtWeight.TabIndex = 29; + // + // btnBmi + // + this.btnBmi.Location = new System.Drawing.Point(321, 239); + this.btnBmi.Name = "btnBmi"; + this.btnBmi.Size = new System.Drawing.Size(75, 23); + this.btnBmi.TabIndex = 30; + this.btnBmi.Text = "Beregn BMI"; + this.btnBmi.UseVisualStyleBackColor = true; + this.btnBmi.Click += new System.EventHandler(this.btnBmi_Click); + // + // lblBmi + // + this.lblBmi.AutoSize = true; + this.lblBmi.Location = new System.Drawing.Point(318, 276); + this.lblBmi.Name = "lblBmi"; + this.lblBmi.Size = new System.Drawing.Size(29, 13); + this.lblBmi.TabIndex = 31; + this.lblBmi.Text = "BMI:"; + // + // txtBmi + // + this.txtBmi.Location = new System.Drawing.Point(353, 273); + this.txtBmi.Name = "txtBmi"; + this.txtBmi.Size = new System.Drawing.Size(100, 20); + this.txtBmi.TabIndex = 32; + // + // OvingsOppgave + // + 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.txtBmi); + this.Controls.Add(this.lblBmi); + this.Controls.Add(this.btnBmi); + this.Controls.Add(this.txtWeight); + this.Controls.Add(this.lblWeight); + this.Controls.Add(this.lblHeight); + this.Controls.Add(this.txtHeight); + this.Controls.Add(this.label1); + this.Controls.Add(this.lblSeconds); + this.Controls.Add(this.txtSeconds); + this.Controls.Add(this.lblMinutes); + this.Controls.Add(this.txtMinutes); + this.Controls.Add(this.btnSplit); + this.Controls.Add(this.lblOppgaveFire); + this.Controls.Add(this.lblTotalSec); + this.Controls.Add(this.txtTotalSec); + this.Controls.Add(this.lblOppgaveTre); + this.Controls.Add(this.txtCooperResult); + this.Controls.Add(this.label2); + this.Controls.Add(this.lblCoopersDistance); + this.Controls.Add(this.txtDistance); + this.Controls.Add(this.txtOhmsU); + this.Controls.Add(this.btnOhmsCalculate); + this.Controls.Add(this.txtOhmsI); + this.Controls.Add(this.lblOhmsI); + this.Controls.Add(this.txtOhmsR); + this.Controls.Add(this.lblOhmsR); + this.Controls.Add(this.lblOppgaveTo); + this.Controls.Add(this.lblOppgaveEn); + this.Controls.Add(this.txtIncVat); + this.Controls.Add(this.lblIncVat); + this.Controls.Add(this.lblExVat); + this.Controls.Add(this.txtExVat); + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.MaximizeBox = false; + this.Name = "OvingsOppgave"; + this.Text = "C# - Øving 3"; + this.Load += new System.EventHandler(this.OvingsOppgave_Load); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.TextBox txtExVat; + private System.Windows.Forms.Label lblExVat; + private System.Windows.Forms.Label lblIncVat; + private System.Windows.Forms.TextBox txtIncVat; + private System.Windows.Forms.Label lblOppgaveEn; + private System.Windows.Forms.Label lblOppgaveTo; + private System.Windows.Forms.Label lblOhmsR; + private System.Windows.Forms.TextBox txtOhmsR; + private System.Windows.Forms.TextBox txtOhmsI; + private System.Windows.Forms.Label lblOhmsI; + private System.Windows.Forms.Button btnOhmsCalculate; + private System.Windows.Forms.TextBox txtOhmsU; + private System.Windows.Forms.Label lblOppgaveTre; + private System.Windows.Forms.TextBox txtCooperResult; + private System.Windows.Forms.Label label2; + private System.Windows.Forms.Label lblCoopersDistance; + private System.Windows.Forms.TextBox txtDistance; + private System.Windows.Forms.Label lblOppgaveFire; + private System.Windows.Forms.Label lblTotalSec; + private System.Windows.Forms.TextBox txtTotalSec; + private System.Windows.Forms.Button btnSplit; + private System.Windows.Forms.Label lblMinutes; + private System.Windows.Forms.TextBox txtMinutes; + private System.Windows.Forms.Label lblSeconds; + private System.Windows.Forms.TextBox txtSeconds; + private System.Windows.Forms.TextBox txtHeight; + private System.Windows.Forms.Label label1; + private System.Windows.Forms.Label lblHeight; + private System.Windows.Forms.Label lblWeight; + private System.Windows.Forms.TextBox txtWeight; + private System.Windows.Forms.Button btnBmi; + private System.Windows.Forms.Label lblBmi; + private System.Windows.Forms.TextBox txtBmi; + } +} + diff --git a/OvingsOppgaveTre/OvingsOppgaveTre/OvingsOppgave.cs b/OvingsOppgaveTre/OvingsOppgaveTre/OvingsOppgave.cs new file mode 100644 index 0000000..b9a52f5 --- /dev/null +++ b/OvingsOppgaveTre/OvingsOppgaveTre/OvingsOppgave.cs @@ -0,0 +1,97 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace OvingsOppgaveTre +{ + public partial class OvingsOppgave : Form + { + public OvingsOppgave() + { + InitializeComponent(); + } + + private void txtExVat_TextChanged(object sender, EventArgs e) + { + double exVat; + string exVatText = txtExVat.Text; + + if (double.TryParse(exVatText, out exVat)) + { + double incVat = exVat * 1.25; + txtIncVat.Text = incVat.ToString(); + } + } + + private void txtIncVat_TextChanged(object sender, EventArgs e) + { + double incVat; + string incVatText = txtIncVat.Text; + + if (double.TryParse(incVatText, out incVat)) + { + // Husker ikke om det er noen lettere måte å regne tilbake lol + // ¯\_(ツ)_/¯ + double exVat = (incVat / 125) * 100; + txtExVat.Text = exVat.ToString(); + } + } + + // Ohms Lov + private void btnOhmsCalculate_Click(object sender, EventArgs e) + { + double r, i, u; + + if (double.TryParse(txtOhmsR.Text, out r) && double.TryParse(txtOhmsI.Text, out i)) + { + u = r * i; + txtOhmsU.Text = u.ToString(); + } + } + + private void OvingsOppgave_Load(object sender, EventArgs e) + {} + + private void txtDistance_TextChanged(object sender, EventArgs e) + { + double distance; + + if (double.TryParse(txtDistance.Text, out distance)) + { + double vo2max = (distance - 504.9) / 44.73; + txtCooperResult.Text = vo2max.ToString(); + } + } + + private void btnSplit_Click(object sender, EventArgs e) + { + long totalSec; + + if (Int64.TryParse(txtTotalSec.Text, out totalSec)) + { + long minutes = Convert.ToInt64(totalSec / 60); + long seconds = totalSec % 60; + + txtMinutes.Text = minutes.ToString(); + txtSeconds.Text = seconds.ToString(); + } + } + + private void btnBmi_Click(object sender, EventArgs e) + { + double height, weight; + + if (double.TryParse(txtHeight.Text, out height) && double.TryParse(txtWeight.Text, out weight)) + { + double bmi = weight / (height * height); + txtBmi.Text = bmi.ToString(); + } + } + } +} diff --git a/OvingsOppgaveTre/OvingsOppgaveTre/OvingsOppgave.resx b/OvingsOppgaveTre/OvingsOppgaveTre/OvingsOppgave.resx new file mode 100644 index 0000000..d180625 --- /dev/null +++ b/OvingsOppgaveTre/OvingsOppgaveTre/OvingsOppgave.resx @@ -0,0 +1,377 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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 + + + + + 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 + uP9idr3/Z37A/2l/vv9qgL7/Z3u2/2R1rPZpeKhtjJepAnaDqAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAJKnugBab68Acoe2RGd/ueZph8f/dJTU/32b2/91kdX/aYDM/2J3 + xf9gc8D/YHC5/2R1uv9me73/Z3y+/2qDw/9nfr7/ZXi1/2h4sN54i69lKV6INhFbhAsYW4MAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAX1FxAP8CAAAqVYMJGVuMIT1ynkBthbfFaIHC/2+Mz/95l9j/epbZ/3iR + 1v9xhNL/anbN/216x/9wfMP/bnzA/2p6vv9kdbr/Y328/2aBwv9lerv/ZHe1/3mKsv0waZXvCWGSrAtx + nzURibkBDXinAAAAAAAAAAAAAAAAACtilQAyY5MLGmGXWRRknrQMaqveLXmz8mqHvv5rhsv/cIvR/3OS + 0v92ktb/e5Pa/3mN2f94hdP/fIfQ/3N8yf9mb7//W2Wq/1RioP9OZ57/WHWx/192tv9bbKz/cYGy/1mL + s/8Hbqj/B3iu4Al/sm8NhLcPCH+wAByUzwAla5wALWyaERpkmJcNa6r3BnfA/wN5xf8+iMP/bYnE/2iC + x/9hfL7/Wnmz/1t0sv9gcbf/ZnXD/2ZzxP9jbr7/W2Sz/1VeqP9SXZ//TlyW/0Jajf9IYpv/Wm6r/1dk + o/9oeK7/gpu9/xx2rv8Dg8D/BYjB+gqDt6cQhrsYEIa6ACZ8sgYTbqWGC3Cv/AR9yP8Cesb/MYzJ/2WU + w/9jgcD/Ynq7/01lo/9CWZD/U2mk/2J1uv9kd73/ZXrA/19xtf9ba6v/WWal/15pqv9aa6v/TGKe/1dr + qv9jdLT/ZXWz/2Z4sf+Imbr/PIGy/wKAwP8Dicf/BofA/gp/s48PfbMIE3OsXgxxr/AFesX/A3jG/wh2 + wv9yq9X/T3av/2R9vf9qgcL/YHS2/01gof9Taqr/aH3F/2Bvtv9VZqb/TmCc/0FMif8+RIX/UVqd/1ts + sP9gc7n/bn7G/3SEyv9zhMf/aHu3/36Ps/9vlrv/DnCw/wR3uP8FhMP/CX208w58sG0Sa6bQCHG4/wR2 + xf8DcsL/D3S+/1uLvP8zSIv/b4nK/3qS1v91idD/bHzF/15vuP9kecH/YHO7/1Zmp/9kdLn/W2Wo/1tn + qv9cbLD/Xm+z/3WEzf9/jdj/fY3U/3OFyf9hdbP/Z3ql/36YuP87dan/FGqr/wZxtP8Iebf/DXar1BRt + q/UHdMD/BHTF/wNxwf8Kbbn/O2KV/y03cv9sicz/hJ7k/36S2/90hM3/ZXS8/11vs/9me8H/d4vW/32M + 2/90gMz/YG2x/01dmP9VZaP/Xmus/2Burv9dbKr/Wmun/09hnf83QnH/TWCM/zxSgv80XZD/DG2z/wlw + sv8ObqX9HHi04Ah4xP8Fdsb/BHHC/wVsu/8rWoz/Jy9a/1Jsq/9nfb3/an68/2l8vP9hcbT/X3Cv/1Rm + ov9jeML/c4Xb/2t5yP9LVpL/UV6W/15trP9cbKj/V2mi/1hrof9WaJv/QlSD/x8mTP8mOW//KD52/ztR + gP8Yba//CW+z/xBoov8qiMBxEHq/9gZ4x/8FcsL/BGi2/x9Wjf8fJUj/M0Nt/1Vvqv9ferr/YHi2/15x + rf9hdK3/XG+m/0lZkP9tgdL/ZXO//z1Ebv9PXY7/UV+T/09Yhv9TXYz/SFiH/0tgj/88S3H/GBoy/yQw + Yv8xQXX/M01+/xFqrf8KcLP/FGuj9Eeo1g0Yf76dCXfC/wVxv/8FZrH/F1eT/x0jQP8nK0P/PFOE/0Vf + kv9UZJL/T1V4/0xUd/9OX4z/Pkt0/1Jhof9RXJj/PUNo/0hWg/9NVXf/Rkda/0pLZ/89RGz/Q1aD/zM+ + Xf8bGin/Jy5V/zhFcv8fXpj/CWyu/xFyr/kheq+LGYO/AB2LxCAQer3JB3G+/wVmsv8SV5j/HSdH/yQm + OP8xPmb/OUt3/0RLaf9KS1r/TFJo/0ZVff8/THn/SVOL/01Ujf9HT33/SVN+/0lVe/9JVHT/RE1y/0BM + dv82QWj/IyxR/xoXJv8sMVX/I0+D/wtoqf8RdrPvJ4W6iEGUwRInoNQAD3e5ABmIxUUNdrvoBW28/wxc + pv8ZJUv/FRMk/x8nUP8vPWf/PU95/0lZfv9EU3v/OERy/zxHff9WYaL/X2iu/0pSkP86QG//MDRa/zM5 + XP8zOFj/KClE/x4iQ/8aJE7/Hxko/yRCbf8PaqT/I5jK8DOs2mZXwe4ENLDhAAAAAAAfr+IAMP//AhOG + wmwLdLvyCWa2/xo1av8VEyb/ExxH/xkePP8nLkn/LTNN/yotSv84Pmn/TliQ/1tnpf9hba//V2Oi/0xY + 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 + AA/4AAA//gAAP/4AAD//AAA//4AAf/+AAP//wAP///AH///8D////z///////ygAAAAwAAAAYAAAAAEA + IAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWl5dAFpc + VwFaYW8EWWN3B1tjdwlXYnYJVmB3CVVecARPSUYBUFBSAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABUYnoAZ3anAFtq + iw1baY07WGSIaVVihItUYYOhVWGCtFRfgrxUYIW+WWOMu1plj6RaZo6HVGKIYUxcgTJJWn4MVtf9AElV + eQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFxv + lwBbbZIGXnScTWR6prBleantXGyg/VVkm/9VZZz/V2eb/1Fcl/9VYJ3/XWuk/15upf9fb6L/XGuY+1Zl + kOhTY4yzV2SMW2BojRBdZo0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AABbX34AXXSfAFxxmRRgdqKIY3ut72yIv/9visf/aYHB/2R7vv9mer3/ZXi6/2BttP9gcLT/ZXm4/2h7 + uf9ne7b/ZHiw/2FyqP9eb6L/XGub9l1plrRibJM9jod8AWxyjQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAF1xngBacKMAW3ChG1xwpaZhd638aIS//3OR0P92lNX/cIzP/2uEy/9ug8v/bX/I/2Nz + vv9fcbn/Y3m9/2l/wv9qgMD/aH67/2d7t/9ne7b/ZHiw/2Byp/9hb57eZnKaQ2BumQAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAGF4qgBid6cZX3itql94s/5hebv/bYrM/3eV1/94ldj/aoXM/2Z+ + yf9qfcr/aHnG/11uvP9bb7j/YHW8/2V7wP9pf8H/aH+//2l/vv9qf73/aX26/2d5tP9jdaz/ZnWmvW99 + pyJCVqsAhY+lAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAb4KwAHSHsA5mfK+bZH+4/maEw/9rh8v/dpTV/32c + 3P92lNf/a4jP/2V9yf9kecf/YnXD/11uu/9ZarT/Xm+4/19wuf9lfL7/ZX29/2uBwP9sg8L/aYC//2d7 + uP9kd7P/ZHWt/2t6q6N3hKgJcoCpAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACOpsIAzendAnSKt3Vmfrf4aIXE/2uJ + y/91lNT/fJ3b/36c2/94lNf/b4nQ/2h+zP9hdcX/YnfE/2Fzv/9icbr/ZHS5/2d4vP9ofL7/ZXm8/2Z8 + vv9qhMP/aYPD/2Z9vf9leLf/ZXe0/2d2sOSEkrWLWHqdaw9RfzkfZo0OGFV8ACFulwAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMmiVADBqmAACPGkDeZCxQW+F + t+ZlfL3/aoXI/2+Nz/94ldb/fZzb/3mW1/93kNX/dI7T/2590P9oc83/anfK/2p3xf9vesT/cH3C/218 + v/9rfL//Z3i8/2J1u/9kf73/aITE/2iCxP9le7v/ZXq5/2R2s/99jLX/Z4Wl/Q9Qgu0OX4yvDWyaPAp6 + qQMLc6MAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJmCUACdhlgUjXI8sHV2QXRdg + lIwbZZutXoKu2GuDu/9pgsb/bYjN/3OO0/94ltb/eJXZ/3mT2f96kdn/fJba/3OD1P9uds//dX/O/3eC + yf91f8X/cn7D/2x5wv9od77/Z3e5/2Bss/9ac6//W3i0/2WAwf9ke7z/YXa3/2J1tf9tfbH/gJi1/x9r + oP8HZZv/CW2e5Qp1pXYMfa8UB3aqABKDsQAAAAAAAAAAAAAAAAAAAAAAAAAAAGNkigC0ZnsBKmOXLxhi + mJYUYpriD2em/Alvs/8Ud7v/YIi5/2uHxP9siMv/a4XN/3GL0v9yktH/cZDS/3iT2P97lNv/fJPc/3qO + 2/96itb/f43U/4CM1f92gM7/bXbJ/2JpvP9YXqf/UVuY/01dl/9JYpj/Smab/1l3tP9feLf/WWys/1pp + qP9jdK//iJi3/1ONtv8Fbqv/BXWw/wZ6sfoJfrC2CoK1PROKwAIPh7sAAAAAAAAAAAAAAAAASGmQAHlv + iAIrZJNUGGKX2A5npf8HdLv/BXvG/wJ5xv8egsX/aoy+/2yIyP9qhsn/aIPI/2aBxP9gf7r/Xn26/2J6 + uv9jdbr/Z3fD/258zv9rdsz/Zm/D/2Jqvv9ZXrP/VFms/09Xof9MVZj/TViX/0pbkv9DWYv/QVyO/0pm + oP9Zca3/WGim/1Ndnv9gcaz/gY+1/4Wiwf8WcKr/BHWz/wOIxf8FiMD/CYG15A2Gu24jkMcIG4zCAAAA + AAAybqAAAGugACFuoU0UZprmC2ys/wV8x/8Dfsr/A3vH/wl5w/9RlMf/Z4vA/2qGxv9lfcL/XHa4/1Bs + qP9LZ5v/Tmif/1BloP9XaKr/V2et/1tss/9cbrn/X225/2But/9dbbL/W2qr/1tqqf9ebK3/XGip/1Rj + nv9GXJL/QFiQ/09kof9db6z/Xm6q/1xqp/9gc67/dYWx/5eow/82fbD/AnCu/wOOzP8Dj83/BoW+/wmC + tvINg7dgCIy3AA2BtwAWda0AHnSqLxBuptMKbav/BX7J/wN/y/8EecX/BHfC/1edzv98pcn/UXq3/2iC + wv9ke7z/WnGx/0Vbmv87UIn/RluT/1txr/9ofsH/aHnB/2l+wv9qgcX/ZHm+/19ysv9bbav/Wmin/1ll + o/9eaaj/YG2x/1ttrv9NZaH/Umem/2Bxs/9kdbb/Z3e3/2h5t/9kd7T/b4Cv/5Wjvv9ZjLf/BW6t/wSI + yf8DhsT/BIvI/wWHwf8KfbHaDX2yNAt8rQAheKsREXWvrAtvq/8Fe8T/A37L/wR5xv8CdcL/HH/F/6LI + 5P9Ngbf/Tm+u/2iAv/9ogL//ZXu8/1lsr/9IW5z/Q1uW/1hwsP9pgMf/aXrF/2Z3vf9hdrf/V2yq/0la + lf9CTov/PUSD/ztAgv9JT5L/W2er/1xvsv9ZbrH/Zni9/2x8xP9wf8X/c4PH/3CCxP9pfLv/aXut/4iZ + tv+FoL//I3Ot/wNxtP8Fd7j/BITD/wSLyf8JfLP/DHuvvxGDuSAVcKlyDm2p9ghyt/8Fecb/BHfG/wRx + wP8BcL//OozH/5O31/8rTJH/VGys/3KLy/9yicv/cIXI/2x+w/9kdLr/VGaq/1hssf9jesL/ZXjB/0lW + m/86QYD/T1+c/1JhoP9JU5H/OkB8/0dRkv9XY6n/VWKl/1tusf9neMH/dIPO/3iG0/98i9T/e43S/3WI + y/9pfr7/Y3as/32Rsf+RqMP/VYq4/wVlqP8Faq7/BnS4/wZ6uv8GgL3/C3mt+w98sXwVbqnMDWel/wZ1 + w/8EdsX/BHLB/wRzw/8Cbbv/NoS//1+IuP8aKXL/U2uq/3qW2P9+ltv/e5DX/3aJ0v9ygsz/aHbB/1xt + t/9hdrz/an/I/2h+xv9cbq//aHvA/2t6xP9lcLf/YGut/2d2uv9kdLr/Vmip/2R2vP94htD/gpHa/4OS + 2/+Bktn/eIjN/3GDxf9leLj/VWeh/2l9o/+Bmbj/bo+0/zlwpf8ibKf/B2ux/wdusf8Gerz/C3Os/w53 + qtAWbanrDWuu/wV4x/8Edcb/BHDB/wRywv8Da7n/JHS1/0tikP8eI2L/TGWl/3qY3P+Hoeb/hZzl/4CV + 4f98jtr/dIPQ/2l6xv9kd77/Z3zD/26Fz/95jtX/f4/b/4CO2/92gs//bnnC/2Bvsf9SY6D/UWSi/1hp + qv9eaqz/ZHCy/2RxtP9hbrD/XG2t/15urv9Yaaj/QVKK/zhCb/9dcZj/TWKN/0FWhP8/W4n/GGyt/wZs + tP8JcLP/C2+s/w9wo/0cdK70DXC2/wV6yf8FdMT/BHLD/wNwwf8Da73/Fmyu/0JUff8kJ1b/P1SQ/3CP + 1v9+mN7/eYzR/3GDxf9peLr/Xmus/1Rho/9RXp7/TV2Z/1hsrf9vg9H/d4nd/3qI3f92gtL/Z3O+/01Z + mP9ATIL/TlmT/1dkof9ZaKX/V2ej/1Vln/9WZpz/VWWa/1JhlP9NYJn/NUN0/x4iTf85TX3/JT94/yY/ + d/87THn/L2qi/wZvuf8Kb7L/C3Cx/xFmmv8ogrnCEHS2/wZ7yv8Fd8f/BXXF/wRwwf8Da77/DW2y/zZW + g/8iJ0//LT1t/1l3uP9acK3/X3Kt/2l/u/9ug8L/a37B/2d4vf9pe7z/YnW0/01elf9ab7T/bIDV/3KE + 3P9tfM7/Wmat/z9Kff9VYpn/Y3Gy/2J0s/9ecKz/Wmqj/1dpov9ZbaT/WW+l/1dqnf9LX4v/JzVc/xkd + Qf8kNm3/JTp1/y1BeP84SHf/PWOV/wtwt/8JbLD/C3Cz/xNil/87l8xPG3u36wp6xf8Gecj/BnfG/wVx + wP8Ea7z/CGGn/yxTgv8hJ0z/HiZK/0JXif9acq3/ZYDD/2WAxP9kfb7/YXa4/2B0s/9lebb/an++/15x + q/9CUYX/YnfC/3OH2/9ufs//UFmY/zc+Yv9SYJP/Vmae/09ek/9QXZH/VmCT/1NhlP9MXo//SV6N/0xk + lP9HW4X/IidD/xUVK/8gLGL/LDxz/zBCd/81QnL/LFyT/wlutf8Jb7P/DG+x/xZlmv143v8HKIvDihF4 + vP0HeMf/BXXD/wVwvv8Fabf/B2Gp/yRVif8hJ0n/FRYs/zI+Yf9BXJT/TGmj/1Bspf9XbqX/WWqg/1Vi + k/9QXov/V2eX/1dqnP83QGL/TmGf/26D0/9qesr/Rk2D/zQ3U/9IV4T/SVaG/09Ygv9ESGj/RUZi/1RY + gf8/RnH/PEp1/0pfi/9CU3n/JChA/xcWJ/8jK1X/MD9y/zZDcv83TXv/FGWn/wdtsP8LcrT/EW6q/x1y + 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 + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMH9 + /wC4/f8Bzv7+FcP+/lax/f21pP799Jb//v+F//7/ZPr+/zDq/v8v6///Ou7/0EPt/z3/5/8AWu3/AAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAA9vL/ACfr5gDE8foOs/n9Uqf+/q+f//72gv7+/0z3/vVB8v6tWu7/MQDw + /wDT8/8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/yf8Aq/z9AKz7/g2t+v1olvz9t2r7 + /mFK8f4NO/b+AJvp/QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANDh + 9ADO5PYCvO/6DKr0/AKo8/sAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAD///////8AAP//8A///wAA//+AAf//AAD//gAAf/8AAP/8AAAf/wAA//gAAB//AAD/8AAAD/8AAP/g + AAAH/wAA/8AAAAD/AAD/gAAAAD8AAPgAAAAAHwAA4AAAAAAHAADAAAAAAAMAAMAAAAAAAwAAgAAAAAAB + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAgAAAAAAAAADAAAAAAAEAAOAAAAAAAQAA4AAAAAAHAADwAAAAAA8AAPgAAAAAHwAA/AAAAAA/ + AAD+AAAAAH8AAP8AAAAA/wAA/4AAAAH/AAD/wAAAA/8AAP/gAAAD/wAA//AAAAP/AAD/8AAAA/8AAP/4 + AAAH/wAA//gAAAf/AAD//AAAD/8AAP/+AAB//wAA//8AAP//AAD//8AD//8AAP//+Af//wAA///+D/// + AAD///8f//8AAP///////wAA////////AAA= + + + \ No newline at end of file diff --git a/OvingsOppgaveTre/OvingsOppgaveTre/OvingsOppgaveTre.csproj b/OvingsOppgaveTre/OvingsOppgaveTre/OvingsOppgaveTre.csproj new file mode 100644 index 0000000..967df02 --- /dev/null +++ b/OvingsOppgaveTre/OvingsOppgaveTre/OvingsOppgaveTre.csproj @@ -0,0 +1,92 @@ + + + + + Debug + AnyCPU + {9CC338A5-69E5-4E9D-B854-762BF17FBE51} + WinExe + OvingsOppgaveTre + OvingsOppgaveTre + v4.6.1 + 512 + true + true + + + AnyCPU + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + AnyCPU + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + OvingsOppgaveTre.Program + + + Icon.ico + + + + + + + + + + + + + + + + + Form + + + OvingsOppgave.cs + + + + + OvingsOppgave.cs + + + ResXFileCodeGenerator + Resources.Designer.cs + Designer + + + True + Resources.resx + + + SettingsSingleFileGenerator + Settings.Designer.cs + + + True + Settings.settings + True + + + + + + + + + + \ No newline at end of file diff --git a/OvingsOppgaveTre/OvingsOppgaveTre/Program.cs b/OvingsOppgaveTre/OvingsOppgaveTre/Program.cs new file mode 100644 index 0000000..dea07a9 --- /dev/null +++ b/OvingsOppgaveTre/OvingsOppgaveTre/Program.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace OvingsOppgaveTre +{ + static class Program + { + /// + /// The main entry point for the application. + /// + [STAThread] + static void Main() + { + Application.EnableVisualStyles(); + Application.SetCompatibleTextRenderingDefault(false); + Application.Run(new OvingsOppgave()); + } + } +} diff --git a/OvingsOppgaveTre/OvingsOppgaveTre/Properties/AssemblyInfo.cs b/OvingsOppgaveTre/OvingsOppgaveTre/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..5917be0 --- /dev/null +++ b/OvingsOppgaveTre/OvingsOppgaveTre/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("OvingsOppgaveTre")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("OvingsOppgaveTre")] +[assembly: AssemblyCopyright("Copyright © 2019")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("9cc338a5-69e5-4e9d-b854-762bf17fbe51")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/OvingsOppgaveTre/OvingsOppgaveTre/Properties/Resources.Designer.cs b/OvingsOppgaveTre/OvingsOppgaveTre/Properties/Resources.Designer.cs new file mode 100644 index 0000000..80d4223 --- /dev/null +++ b/OvingsOppgaveTre/OvingsOppgaveTre/Properties/Resources.Designer.cs @@ -0,0 +1,71 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace OvingsOppgaveTre.Properties +{ + + + /// + /// A strongly-typed resource class, for looking up localized strings, etc. + /// + // This class was auto-generated by the StronglyTypedResourceBuilder + // class via a tool like ResGen or Visual Studio. + // To add or remove a member, edit your .ResX file then rerun ResGen + // with the /str option, or rebuild your VS project. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.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() + { + } + + /// + /// Returns the cached ResourceManager instance used by this class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager + { + get + { + if ((resourceMan == null)) + { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("OvingsOppgaveTre.Properties.Resources", typeof(Resources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Overrides the current thread's CurrentUICulture property for all + /// resource lookups using this strongly typed resource class. + /// + [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/OvingsOppgaveTre/OvingsOppgaveTre/Properties/Resources.resx b/OvingsOppgaveTre/OvingsOppgaveTre/Properties/Resources.resx new file mode 100644 index 0000000..af7dbeb --- /dev/null +++ b/OvingsOppgaveTre/OvingsOppgaveTre/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/OvingsOppgaveTre/OvingsOppgaveTre/Properties/Settings.Designer.cs b/OvingsOppgaveTre/OvingsOppgaveTre/Properties/Settings.Designer.cs new file mode 100644 index 0000000..e0e3e35 --- /dev/null +++ b/OvingsOppgaveTre/OvingsOppgaveTre/Properties/Settings.Designer.cs @@ -0,0 +1,30 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace OvingsOppgaveTre.Properties +{ + + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.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/OvingsOppgaveTre/OvingsOppgaveTre/Properties/Settings.settings b/OvingsOppgaveTre/OvingsOppgaveTre/Properties/Settings.settings new file mode 100644 index 0000000..3964565 --- /dev/null +++ b/OvingsOppgaveTre/OvingsOppgaveTre/Properties/Settings.settings @@ -0,0 +1,7 @@ + + + + + + +