Browse Source

Добавьте файлы проекта.

sasha 3 years ago
parent
commit
074eaeac4b

+ 25 - 0
kursach3.sln

@@ -0,0 +1,25 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.0.32126.317
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "kursach3", "kursach3\kursach3.csproj", "{6869CD33-F10A-4B6E-9127-448F74BE2045}"
+EndProject
+Global
+	GlobalSection(SolutionConfigurationPlatforms) = preSolution
+		Debug|Any CPU = Debug|Any CPU
+		Release|Any CPU = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(ProjectConfigurationPlatforms) = postSolution
+		{6869CD33-F10A-4B6E-9127-448F74BE2045}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{6869CD33-F10A-4B6E-9127-448F74BE2045}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{6869CD33-F10A-4B6E-9127-448F74BE2045}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{6869CD33-F10A-4B6E-9127-448F74BE2045}.Release|Any CPU.Build.0 = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(SolutionProperties) = preSolution
+		HideSolutionNode = FALSE
+	EndGlobalSection
+	GlobalSection(ExtensibilityGlobals) = postSolution
+		SolutionGuid = {23A67098-0200-462A-8402-40934343E614}
+	EndGlobalSection
+EndGlobal

+ 6 - 0
kursach3/App.config

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<configuration>
+    <startup> 
+        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
+    </startup>
+</configuration>

+ 16 - 0
kursach3/App.xaml

@@ -0,0 +1,16 @@
+<Application x:Class="kursach3.App"
+             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+             xmlns:local="clr-namespace:kursach3"
+             StartupUri="MainWindow.xaml">
+    <Application.Resources>
+        <ResourceDictionary>
+            <ResourceDictionary.MergedDictionaries>
+                <ResourceDictionary Source="pack://application:,,,/MaterialDesignThemes.Wpf;component/Themes/MaterialDesignTheme.Light.xaml" />
+                <ResourceDictionary Source="pack://application:,,,/MaterialDesignThemes.Wpf;component/Themes/MaterialDesignTheme.Defaults.xaml" />
+                <ResourceDictionary Source="pack://application:,,,/MaterialDesignColors;component/Themes/Recommended/Primary/MaterialDesignColor.DeepPurple.xaml" />
+                <ResourceDictionary Source="pack://application:,,,/MaterialDesignColors;component/Themes/Recommended/Accent/MaterialDesignColor.Lime.xaml" />
+            </ResourceDictionary.MergedDictionaries>
+        </ResourceDictionary>
+    </Application.Resources>
+</Application>

+ 17 - 0
kursach3/App.xaml.cs

@@ -0,0 +1,17 @@
+using System;
+using System.Collections.Generic;
+using System.Configuration;
+using System.Data;
+using System.Linq;
+using System.Threading.Tasks;
+using System.Windows;
+
+namespace kursach3
+{
+    /// <summary>
+    /// Логика взаимодействия для App.xaml
+    /// </summary>
+    public partial class App : Application
+    {
+    }
+}

+ 48 - 0
kursach3/MainWindow.xaml

@@ -0,0 +1,48 @@
+<Window x:Class="kursach3.MainWindow"
+        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
+        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+        xmlns:local="clr-namespace:kursach3"
+        mc:Ignorable="d"
+        xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
+        Title="MainWindow" Height="600" Width="400">
+    <Grid Background="#F3EAF4">
+        <Grid.ColumnDefinitions>
+            <ColumnDefinition Width="133*"/>
+            <ColumnDefinition Width="133*"/>
+            <ColumnDefinition Width="23*"/>
+            <ColumnDefinition Width="110*"/>
+        </Grid.ColumnDefinitions>
+        <Grid.RowDefinitions>
+            <RowDefinition/>
+            <RowDefinition/>
+            <RowDefinition/>
+        </Grid.RowDefinitions>
+        <Button Name="btn1" Content="1"  Height="56" Width="56" Click="btn1_Click" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="68,63,0,0" Grid.Row="1"/>
+        <!--Button Name="btnPoint" Content="."  Height="27" Width="63" Click="btnPoint_Click" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="67,104,0,0" Grid.Row="2" Grid.Column="1"/-->
+        <Button Name="btn2" Content="2"  Height="56" Width="56" Click="btn2_Click" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="5,63,0,0" Grid.Row="1" Grid.Column="1"/>
+        <Button Name="btn3" Content="3"  Height="56" Width="56" Click="btn3_Click" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="70,63,0,0" Grid.Row="1" Grid.Column="1"/>
+        <Button Name="btn4" Content="4"  Height="56" Width="56" Click="btn4_Click" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="68,128,0,0" Grid.Row="1"/>
+        <Button Name="btn5" Content="5"  Height="56" Width="56" Click="btn5_Click" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="5,128,0,0" Grid.Row="1" Grid.Column="1"/>
+        <Button Name="btn6" Content="6"  Height="56" Width="56" Click="btn6_Click" HorizontalAlignment="Left" VerticalAlignment="Top" Grid.Column="1" Margin="70,128,0,0" Grid.Row="1"/>
+        <Button Name="btn7" Content="7"  Height="56" Width="56" Click="btn7_Click" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="68,10,0,0" Grid.Row="2"/>
+        <Button Name="btn8" Content="8"  Height="56" Width="56" Click="btn8_Click" HorizontalAlignment="Left" VerticalAlignment="Top" Grid.Column="1" Margin="5,10,0,0" Grid.Row="2"/>
+        <Button Name="btn9" Content="9"  Height="56" Width="56" Click="btn9_Click" HorizontalAlignment="Left" VerticalAlignment="Top" Grid.Column="1" Margin="70,10,0,0" Grid.Row="2"/>
+        <Button Name="btn0" Content="0"  Height="56" Width="56" Click="btn0_Click" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="5,72,0,0" Grid.Row="2" Grid.Column="1"/>
+
+        <Button x:Name="btnClear" Content="C"  Height="56" Width="56" Click="btnClear_Click" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="68,72,0,0" Grid.Row="2"/>
+        <Button x:Name="btnPlus" Content="+" Height="56" Width="61" Click="btnPlus_Click" HorizontalAlignment="Left" VerticalAlignment="Top" Grid.Column="2" Margin="10,63,0,0" Grid.Row="1" Grid.ColumnSpan="2"/>
+        <Button x:Name="btnMinus" Content="-"  Height="56" Width="61" Click="btnMinus_Click" HorizontalAlignment="Left" VerticalAlignment="Top" Grid.Column="2" Margin="11,128,0,0" Grid.Row="1" Grid.ColumnSpan="2"/>
+        <Button x:Name="btnMult" Content="*"  Height="56" Width="61" Click="btnMult_Click" HorizontalAlignment="Left" VerticalAlignment="Top" Grid.Column="2" Margin="11,10,0,0" Grid.Row="2" Grid.ColumnSpan="2"/>
+        <!--Button x:Name="btn8642" Content="in 8"  Height="27" Width="63" Click="btn8642_Click" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="67,72,0,0" Grid.Row="2" Grid.Column="1"/>
+        <Button x:Name="btn10" Content="in 10"  Height ="27" Width="63" Click="btn10_Click" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="8,72,0,0" Grid.Row="2" Grid.Column="2"/>
+        <Button x:Name="btnResult_Copy" Content="=10"  Height="27" Width="63" Click="btnResult10_Click" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="8,104,0,0" Grid.Column="2" Grid.Row="2"/-->
+
+        <!--Label Name ="lblFirst" FontSize="20" HorizontalContentAlignment="Right" HorizontalAlignment="Left" VerticalAlignment="Top" Width="270" Height="40" Background="#FFFF" Grid.ColumnSpan="3" Margin="68,30,0,0"/-->
+        <TextBox Name ="lblFirst" materialDesign:HintAssist.Hint="Введите число в десятичной системе" Style="{StaticResource MaterialDesignFloatingHintTextBox}" Background="#FFFF" Margin="68,30,50,125" Grid.ColumnSpan="4" Height="40"/>
+        <TextBox Name ="lblSecond" materialDesign:HintAssist.Hint="Введите число в 8-6-4-2" Style="{StaticResource MaterialDesignFloatingHintTextBox}" Background="#FFFF" Margin="68,96,50,59" Grid.ColumnSpan="4" Height="40"/>
+        <Label Name ="lblAction" materialDesign:HintAssist.Hint="Введите знак операции" Background="#FFFF" Margin="68,60,50,92" Grid.ColumnSpan="4" Height="40"/>
+        <TextBox Name ="lblResult" materialDesign:HintAssist.Hint="Результат" Style="{StaticResource MaterialDesignFloatingHintTextBox}" Background="#FFFF" Margin="68,126,50,0" Height="40" VerticalAlignment="Top" Grid.ColumnSpan="4"/>
+    </Grid>
+</Window>

+ 178 - 0
kursach3/MainWindow.xaml.cs

@@ -0,0 +1,178 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Data;
+using System.Windows.Documents;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Imaging;
+using System.Windows.Navigation;
+using System.Windows.Shapes;
+
+namespace kursach3
+{
+    /// <summary>
+    /// Логика взаимодействия для MainWindow.xaml
+    /// </summary>
+    public partial class MainWindow : Window
+    {
+        public MainWindow()
+        {
+            InitializeComponent();
+        }
+
+        public void ClearTextBox()
+        {
+            lblFirst.Text = "";
+            lblSecond.Text = "";
+            lblAction.Content = "";
+            lblResult.Text = "";
+        }
+
+        private void btn1_Click(object sender, RoutedEventArgs e)
+        {
+            if (lblAction.Content == "")
+            {
+                lblFirst.Text += Numbers.One();
+            }
+            else
+            {
+                lblSecond.Text += Numbers.One();
+            }
+        }
+
+        private void btn2_Click(object sender, RoutedEventArgs e)
+        {
+            if (lblAction.Content == "")
+            {
+                lblFirst.Text += Numbers.Two();
+            }
+            else
+            {
+                lblSecond.Text += Numbers.Two();
+            }
+        }
+
+        private void btn3_Click(object sender, RoutedEventArgs e)
+        {
+            if (lblAction.Content == "")
+            {
+                lblFirst.Text += Numbers.Three();
+            }
+            else
+            {
+                lblSecond.Text += Numbers.Three();
+            }
+        }
+
+        private void btn4_Click(object sender, RoutedEventArgs e)
+        {
+            if (lblAction.Content == "")
+            {
+                lblFirst.Text += Numbers.Four();
+            }
+            else
+            {
+                lblSecond.Text += Numbers.Four();
+            }
+        }
+
+        private void btn5_Click(object sender, RoutedEventArgs e)
+        {
+            if (lblAction.Content == "")
+            {
+                lblFirst.Text += Numbers.Five();
+            }
+            else
+            {
+                lblSecond.Text += Numbers.Five();
+            }
+        }
+
+        private void btn6_Click(object sender, RoutedEventArgs e)
+        {
+            if (lblAction.Content == "")
+            {
+                lblFirst.Text += Numbers.Six();
+            }
+            else
+            {
+                lblSecond.Text += Numbers.Six();
+            }
+        }
+
+        private void btn7_Click(object sender, RoutedEventArgs e)
+        {
+            if (lblAction.Content == "")
+            {
+                lblFirst.Text += Numbers.Seven();
+            }
+            else
+            {
+                lblSecond.Text += Numbers.Seven();
+            }
+        }
+
+        private void btn8_Click(object sender, RoutedEventArgs e)
+        {
+            if (lblAction.Content == "")
+            {
+                lblFirst.Text += Numbers.Eight();
+            }
+            else
+            {
+                lblSecond.Text += Numbers.Eight();
+            }
+        }
+
+        private void btn9_Click(object sender, RoutedEventArgs e)
+        {
+            if (lblAction.Content == "")
+            {
+                lblFirst.Text += Numbers.Nine();
+            }
+            else
+            {
+                lblSecond.Text += Numbers.Nine();
+            }
+        }
+
+        private void btn0_Click(object sender, RoutedEventArgs e)
+        {
+            
+            if (lblAction.Content == "")
+            {
+                lblFirst.Text += Numbers.Zero();
+            }
+            else
+            {
+                lblSecond.Text += Numbers.Zero();
+            }
+        }
+
+        private void btnClear_Click(object sender, RoutedEventArgs e)
+        {
+            ClearTextBox();
+        }
+
+        private void btnPlus_Click(object sender, RoutedEventArgs e)
+        {
+            lblAction.Content = "+";
+        }
+
+        private void btnMinus_Click(object sender, RoutedEventArgs e)
+        {
+            lblAction.Content = "-";
+        }
+
+        private void btnMult_Click(object sender, RoutedEventArgs e)
+        {
+            lblAction.Content = "*";
+        }
+
+    }
+}

+ 56 - 0
kursach3/Numbers.cs

@@ -0,0 +1,56 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace kursach3
+{
+    internal class Numbers
+    {
+        public static string One()
+        {
+            return "1";
+        }
+        public static string Two()
+        {
+            return "2";
+        }
+        public static string Three()
+        {
+            return "3";
+        }
+        public static string Four()
+        {
+            return "4";
+        }
+        public static string Five()
+        {
+            return "5";
+        }
+        public static string Six()
+        {
+            return "6";
+        }
+        public static string Seven()
+        {
+            return "7";
+        }
+        public static string Eight()
+        {
+            return "8";
+        }
+        public static string Nine()
+        {
+            return "9";
+        }
+        public static string Zero()
+        {
+            return "0";
+        }
+        public static string Poin()
+        {
+            return ".";
+        }
+    }
+}

+ 55 - 0
kursach3/Properties/AssemblyInfo.cs

@@ -0,0 +1,55 @@
+using System.Reflection;
+using System.Resources;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+using System.Windows;
+
+// Общие сведения об этой сборке предоставляются следующим набором
+// набор атрибутов. Измените значения этих атрибутов, чтобы изменить сведения,
+// связанные со сборкой.
+[assembly: AssemblyTitle("kursach3")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("kursach3")]
+[assembly: AssemblyCopyright("Copyright ©  2022")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Установка значения False для параметра ComVisible делает типы в этой сборке невидимыми
+// для компонентов COM. Если необходимо обратиться к типу в этой сборке через
+// из модели COM, установите атрибут ComVisible для этого типа в значение true.
+[assembly: ComVisible(false)]
+
+//Чтобы начать создание локализуемых приложений, задайте
+//<UICulture>CultureYouAreCodingWith</UICulture> в файле .csproj
+//в <PropertyGroup>. Например, при использовании английского (США)
+//в своих исходных файлах установите <UICulture> в en-US.  Затем отмените преобразование в комментарий
+//атрибута NeutralResourceLanguage ниже.  Обновите "en-US" в
+//строка внизу для обеспечения соответствия настройки UICulture в файле проекта.
+
+//[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]
+
+
+[assembly: ThemeInfo(
+    ResourceDictionaryLocation.None, //где расположены словари ресурсов по конкретным тематикам
+                                     //(используется, если ресурс не найден на странице,
+                                     // или в словарях ресурсов приложения)
+    ResourceDictionaryLocation.SourceAssembly //где расположен словарь универсальных ресурсов
+                                              //(используется, если ресурс не найден на странице,
+                                              // в приложении или в каких-либо словарях ресурсов для конкретной темы)
+)]
+
+
+// Сведения о версии для сборки включают четыре следующих значения:
+//
+//      Основной номер версии
+//      Дополнительный номер версии
+//      Номер сборки
+//      Номер редакции
+//
+// Можно задать все значения или принять номера сборки и редакции по умолчанию 
+// используя "*", как показано ниже:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]

+ 71 - 0
kursach3/Properties/Resources.Designer.cs

@@ -0,0 +1,71 @@
+//------------------------------------------------------------------------------
+// <auto-generated>
+//     Этот код был создан программным средством.
+//     Версия среды выполнения: 4.0.30319.42000
+//
+//     Изменения в этом файле могут привести к неправильному поведению и будут утрачены, если
+//     код создан повторно.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+namespace kursach3.Properties
+{
+
+
+    /// <summary>
+    ///   Класс ресурсов со строгим типом для поиска локализованных строк и пр.
+    /// </summary>
+    // Этот класс был автоматически создан при помощи StronglyTypedResourceBuilder
+    // класс с помощью таких средств, как ResGen или Visual Studio.
+    // Для добавления или удаления члена измените файл .ResX, а затем перезапустите ResGen
+    // с параметром /str или заново постройте свой VS-проект.
+    [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()
+        {
+        }
+
+        /// <summary>
+        ///   Возврат кэшированного экземпляра ResourceManager, используемого этим классом.
+        /// </summary>
+        [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("kursach3.Properties.Resources", typeof(Resources).Assembly);
+                    resourceMan = temp;
+                }
+                return resourceMan;
+            }
+        }
+
+        /// <summary>
+        ///   Переопределяет свойство CurrentUICulture текущего потока для всех
+        ///   подстановки ресурсов с помощью этого класса ресурсов со строгим типом.
+        /// </summary>
+        [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+        internal static global::System.Globalization.CultureInfo Culture
+        {
+            get
+            {
+                return resourceCulture;
+            }
+            set
+            {
+                resourceCulture = value;
+            }
+        }
+    }
+}

+ 117 - 0
kursach3/Properties/Resources.resx

@@ -0,0 +1,117 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>

+ 30 - 0
kursach3/Properties/Settings.Designer.cs

@@ -0,0 +1,30 @@
+//------------------------------------------------------------------------------
+// <auto-generated>
+//     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.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+namespace kursach3.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;
+            }
+        }
+    }
+}

+ 7 - 0
kursach3/Properties/Settings.settings

@@ -0,0 +1,7 @@
+<?xml version='1.0' encoding='utf-8'?>
+<SettingsFile xmlns="uri:settings" CurrentProfile="(Default)">
+  <Profiles>
+    <Profile Name="(Default)" />
+  </Profiles>
+  <Settings />
+</SettingsFile>

+ 115 - 0
kursach3/kursach3.csproj

@@ -0,0 +1,115 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProjectGuid>{6869CD33-F10A-4B6E-9127-448F74BE2045}</ProjectGuid>
+    <OutputType>WinExe</OutputType>
+    <RootNamespace>kursach3</RootNamespace>
+    <AssemblyName>kursach3</AssemblyName>
+    <TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
+    <FileAlignment>512</FileAlignment>
+    <ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+    <WarningLevel>4</WarningLevel>
+    <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
+    <Deterministic>true</Deterministic>
+    <NuGetPackageImportStamp>
+    </NuGetPackageImportStamp>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <PlatformTarget>AnyCPU</PlatformTarget>
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug\</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <PlatformTarget>AnyCPU</PlatformTarget>
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\Release\</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="MaterialDesignColors, Version=2.0.4.3, Culture=neutral, PublicKeyToken=df2a72020bd7962a, processorArchitecture=MSIL">
+      <HintPath>..\packages\MaterialDesignColors.2.0.4\lib\net452\MaterialDesignColors.dll</HintPath>
+    </Reference>
+    <Reference Include="MaterialDesignThemes.Wpf, Version=4.3.0.3, Culture=neutral, PublicKeyToken=df2a72020bd7962a, processorArchitecture=MSIL">
+      <HintPath>..\packages\MaterialDesignThemes.4.3.0\lib\net452\MaterialDesignThemes.Wpf.dll</HintPath>
+    </Reference>
+    <Reference Include="System" />
+    <Reference Include="System.Data" />
+    <Reference Include="System.Xml" />
+    <Reference Include="Microsoft.CSharp" />
+    <Reference Include="System.Core" />
+    <Reference Include="System.Xml.Linq" />
+    <Reference Include="System.Data.DataSetExtensions" />
+    <Reference Include="System.Net.Http" />
+    <Reference Include="System.Xaml">
+      <RequiredTargetFramework>4.0</RequiredTargetFramework>
+    </Reference>
+    <Reference Include="WindowsBase" />
+    <Reference Include="PresentationCore" />
+    <Reference Include="PresentationFramework" />
+  </ItemGroup>
+  <ItemGroup>
+    <ApplicationDefinition Include="App.xaml">
+      <Generator>MSBuild:Compile</Generator>
+      <SubType>Designer</SubType>
+    </ApplicationDefinition>
+    <Page Include="MainWindow.xaml">
+      <Generator>MSBuild:Compile</Generator>
+      <SubType>Designer</SubType>
+    </Page>
+    <Compile Include="App.xaml.cs">
+      <DependentUpon>App.xaml</DependentUpon>
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="MainWindow.xaml.cs">
+      <DependentUpon>MainWindow.xaml</DependentUpon>
+      <SubType>Code</SubType>
+    </Compile>
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="Numbers.cs" />
+    <Compile Include="Properties\AssemblyInfo.cs">
+      <SubType>Code</SubType>
+    </Compile>
+    <Compile Include="Properties\Resources.Designer.cs">
+      <AutoGen>True</AutoGen>
+      <DesignTime>True</DesignTime>
+      <DependentUpon>Resources.resx</DependentUpon>
+    </Compile>
+    <Compile Include="Properties\Settings.Designer.cs">
+      <AutoGen>True</AutoGen>
+      <DependentUpon>Settings.settings</DependentUpon>
+      <DesignTimeSharedInput>True</DesignTimeSharedInput>
+    </Compile>
+    <EmbeddedResource Include="Properties\Resources.resx">
+      <Generator>ResXFileCodeGenerator</Generator>
+      <LastGenOutput>Resources.Designer.cs</LastGenOutput>
+    </EmbeddedResource>
+    <None Include="packages.config" />
+    <None Include="Properties\Settings.settings">
+      <Generator>SettingsSingleFileGenerator</Generator>
+      <LastGenOutput>Settings.Designer.cs</LastGenOutput>
+    </None>
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="App.config" />
+  </ItemGroup>
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+  <Import Project="..\packages\MaterialDesignThemes.4.3.0\build\MaterialDesignThemes.targets" Condition="Exists('..\packages\MaterialDesignThemes.4.3.0\build\MaterialDesignThemes.targets')" />
+  <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
+    <PropertyGroup>
+      <ErrorText>Данный проект ссылается на пакеты NuGet, отсутствующие на этом компьютере. Используйте восстановление пакетов NuGet, чтобы скачать их.  Дополнительную информацию см. по адресу: http://go.microsoft.com/fwlink/?LinkID=322105. Отсутствует следующий файл: {0}.</ErrorText>
+    </PropertyGroup>
+    <Error Condition="!Exists('..\packages\MaterialDesignThemes.4.3.0\build\MaterialDesignThemes.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\MaterialDesignThemes.4.3.0\build\MaterialDesignThemes.targets'))" />
+  </Target>
+</Project>

+ 5 - 0
kursach3/packages.config

@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+  <package id="MaterialDesignColors" version="2.0.4" targetFramework="net472" />
+  <package id="MaterialDesignThemes" version="4.3.0" targetFramework="net472" />
+</packages>