· 5 years ago · Jun 21, 2020, 08:54 AM
1using System;
2using System.Collections.Generic;
3using System.IO;
4using System.Linq;
5using System.Runtime.InteropServices.WindowsRuntime;
6using Windows.Foundation;
7using Windows.Foundation.Collections;
8using Windows.UI.Xaml;
9using Windows.UI.Xaml.Controls;
10using Windows.UI.Xaml.Controls.Primitives;
11using Windows.UI.Xaml.Data;
12using Windows.UI.Xaml.Input;
13using Windows.UI.Xaml.Media;
14using Windows.UI.Xaml.Navigation;
15using System.Data.SQLite;
16using Windows.Storage;
17using Windows.UI;
18using System.Threading;
19using Windows.UI.Input;
20
21// The Blank Page item template is documented at https://go.microsoft.com/fwlink/?LinkId=402352&clcid=0x409
22
23namespace Task_Manager
24{
25 /// <summary>
26 /// An empty page that can be used on its own or navigated to within a Frame.
27 /// </summary>
28 public sealed partial class MainPage : Page
29 {
30
31 Brush taskNameBrush;
32
33 public MainPage()
34 {
35 InitializeComponent();
36 taskNameBrush = taskName.BorderBrush;
37 string DBName = ApplicationData.Current.LocalFolder.Path + @"\tasks.db";
38 if (!File.Exists(DBName))
39 {
40 SQLiteConnection.CreateFile(DBName);
41 }
42 }
43
44 private void Save(object sender, RoutedEventArgs e)
45 {
46 taskName.Text = taskName.Text.Trim();
47 taskDescription.Text = taskDescription.Text.Trim();
48
49 taskName.BorderBrush = taskNameBrush;
50
51 if (taskName.Text == "")
52 {
53 taskName.BorderBrush = new SolidColorBrush(Color.FromArgb(255, 184, 51, 37));
54 return;
55 }
56 if(taskDescription.Text == "")
57 {
58 taskDescription.Text = "No Description";
59 }
60
61 string DBName = ApplicationData.Current.LocalFolder.Path + @"\tasks.db";
62 string cs = "Data Source=" + DBName;
63 string stm = @"create table if not exists tasks (
64 id integer primary key,
65 name text not null,
66 description text,
67 complete integer not null
68 );";
69
70 var con = new SQLiteConnection(cs);
71 con.Open();
72
73 var cmd = new SQLiteCommand(stm, con);
74 cmd.ExecuteNonQuery();
75
76
77
78 stm = @"insert into tasks (name, description, complete)
79 values (@name, @description, 0);";
80 cmd.CommandText = stm;
81
82 cmd.Parameters.AddWithValue("@name", taskName.Text);
83 cmd.Parameters.AddWithValue("@description", taskDescription.Text);
84 cmd.ExecuteNonQuery();
85
86 taskName.Text = taskDescription.Text = "";
87 }
88
89 private void ReadPointerPosition(object sender, PointerRoutedEventArgs e)
90 {
91 PointerPoint point = e.GetCurrentPoint(this);
92 taskName.Text = point.Position.X.ToString();
93 splitView.IsPaneOpen = point.Position.X < splitView.OpenPaneLength;
94 }
95 }
96}