Skip to content

Commit 8e7fc85

Browse files
committed
0.2
1 parent 006befa commit 8e7fc85

16 files changed

Lines changed: 1071 additions & 163 deletions

StudentProgramCsharp/Class/RunCMD.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ public void cmd(string strCmdText)
2424
cmd.StartInfo.UseShellExecute = false;
2525
cmd.Start();
2626

27-
cmd.StandardInput.WriteLine(strCmdText);
27+
cmd.StandardInput.WriteLine("\""+ strCmdText +"\"");
2828
cmd.StandardInput.Flush();
2929
cmd.StandardInput.Close();
3030
cmd.WaitForExit();

StudentProgramCsharp/Database.rar

316 KB
Binary file not shown.

StudentProgramCsharp/Form1.Designer.cs

Lines changed: 625 additions & 82 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

StudentProgramCsharp/Form1.cs

Lines changed: 233 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@
1515
using System.Reflection.Emit;
1616
using StudentProgramCsharp.Properties;
1717
using System.Linq.Expressions;
18+
using System.IO;
19+
using System.Reflection;
20+
using System.Runtime.InteropServices;
1821

1922
namespace StudentProgramCsharp
2023
{
@@ -88,13 +91,61 @@ private void popuProgramItems()
8891

8992

9093
}
94+
//get number of programs
95+
lab_numOFprograms.Text = "Programs: " + x.ToString() + " |";
96+
9197
number = 0;
9298
dataReader.Close();
9399
readData.close();
94100

95101
}
96102

103+
//Fun for showing items on programs page by select type from database
104+
private void showItemType(String Type)
105+
{
106+
Programs_flowLayoutPanel.Controls.Clear();
107+
108+
CDB readData = new CDB();
109+
int x = readData.count_Row("ProgramsData", " Where CONVERT(VARCHAR,Type) like '%" + Type + "%'"); //Count the number of rows in the table
110+
111+
SqlCommand cmd;
112+
SqlDataReader dataReader;
113+
String sql = "";
114+
int number = 0;
115+
116+
sql = "Select * From ProgramsData Where CONVERT(VARCHAR,Type) like '%" + Type + "%'";
117+
cmd = new SqlCommand(sql, readData._con());
118+
readData.open();
119+
120+
dataReader = cmd.ExecuteReader();
121+
ProgramPage[] listItems = new ProgramPage[x];
122+
123+
while (dataReader.Read())
124+
{
125+
listItems[number] = new ProgramPage();
126+
listItems[number].Title = dataReader["Name"].ToString();
127+
listItems[number].Install = dataReader["Url"].ToString();
128+
129+
130+
131+
if (Programs_flowLayoutPanel.Controls.Count < 0)
132+
{
133+
Programs_flowLayoutPanel.Controls.Clear();
134+
}
135+
else
136+
Programs_flowLayoutPanel.Controls.Add(listItems[number]);
137+
138+
number++;
139+
140+
141+
}
142+
143+
97144

145+
number = 0;
146+
dataReader.Close();
147+
readData.close();
148+
}
98149

99150
//Fun for adding items to Download page
100151
private void popuDownloadItems()
@@ -153,32 +204,203 @@ private void popuDownloadItems()
153204

154205
}
155206

156-
207+
//Get Program page
157208
private void but_Programs_Click(object sender, EventArgs e)
158209
{
159-
//Get Program page
160-
Programs_flowLayoutPanel.Controls.Clear();
161-
popuProgramItems();
162-
163-
Programs_flowLayoutPanel.BringToFront();
210+
if (tb_Search.Text != "")
211+
Programs.BringToFront();
164212

165-
213+
else if (tb_Search.Text == "")
214+
{
215+
Programs_flowLayoutPanel.Controls.Clear();
216+
popuProgramItems();
217+
Programs.BringToFront();
166218

219+
}
167220
}
168221

222+
//Get Library page
169223
private void but_My_Library_Click(object sender, EventArgs e)
170224
{
171-
//Get Library page
172-
My_Library_flowLayoutPanel.BringToFront();
225+
//My_Library_flowLayoutPanel.BringToFront();
173226
}
174227

175-
176228

229+
//Get Download page
177230
private void but_Downloads_Click(object sender, EventArgs e)
178231
{
179-
//Get Download page
180232
Downloads_flowLayoutPanel.BringToFront();
181233
}
182234

235+
236+
237+
//Show Settings Menu
238+
private void button1_Click(object sender, EventArgs e)
239+
{
240+
settingsMenuForm.Show(this, new Point(but_Settings.Location.X +60, but_Settings.Location.Y +45));
241+
}
242+
243+
244+
//Search bar if Text Changed
245+
private void tb_Search_TextChanged(object sender, EventArgs e)
246+
{
247+
if (tb_Search.Text != "")
248+
{
249+
Programs_flowLayoutPanel.Controls.Clear();
250+
251+
CDB readData = new CDB();
252+
int x = readData.count_Row("ProgramsData", " Where CONVERT(VARCHAR,Name) like '%" + tb_Search.Text + "%'"); //Count the number of rows in the table
253+
254+
SqlCommand cmd;
255+
SqlDataReader dataReader;
256+
String sql = "";
257+
int number = 0;
258+
259+
sql = "Select * From ProgramsData Where CONVERT(VARCHAR,Name) like '%" + tb_Search.Text + "%'";
260+
cmd = new SqlCommand(sql, readData._con());
261+
readData.open();
262+
263+
dataReader = cmd.ExecuteReader();
264+
ProgramPage[] listItems = new ProgramPage[x];
265+
266+
while (dataReader.Read())
267+
{
268+
listItems[number] = new ProgramPage();
269+
listItems[number].Title = dataReader["Name"].ToString();
270+
listItems[number].Install = dataReader["Url"].ToString();
271+
272+
273+
274+
if (Programs_flowLayoutPanel.Controls.Count < 0)
275+
{
276+
Programs_flowLayoutPanel.Controls.Clear();
277+
}
278+
else
279+
Programs_flowLayoutPanel.Controls.Add(listItems[number]);
280+
281+
number++;
282+
283+
284+
}
285+
286+
287+
288+
number = 0;
289+
dataReader.Close();
290+
readData.close();
291+
292+
}
293+
else if (tb_Search.Text == "")
294+
{
295+
Programs_flowLayoutPanel.Controls.Clear();
296+
popuProgramItems();
297+
}
298+
299+
}
300+
301+
302+
303+
//
304+
// get Info to main form
305+
//
306+
private void Programs_flowLayoutPanel_ControlAdded(object sender, ControlEventArgs e)
307+
{
308+
//get number of programs When add to page
309+
lab_numOFprograms.Text = "Programs: " + Programs_flowLayoutPanel.Controls.Count + " |";
310+
}
311+
312+
private void Programs_flowLayoutPanel_ControlRemoved(object sender, ControlEventArgs e)
313+
{
314+
//get number of programs When remove from page
315+
lab_numOFprograms.Text = "Programs: " + Programs_flowLayoutPanel.Controls.Count + " |";
316+
}
317+
318+
private void Downloads_flowLayoutPanel_ControlAdded(object sender, ControlEventArgs e)
319+
{
320+
//get number of Downloads When add to page
321+
lab_NumberOfDownloads.Text = "Downloads: " + Downloads_flowLayoutPanel.Controls.Count + " |";
322+
}
323+
324+
private void Downloads_flowLayoutPanel_ControlRemoved(object sender, ControlEventArgs e)
325+
{
326+
//get number of Downloads When remove from page
327+
lab_NumberOfDownloads.Text = "Downloads: " + Downloads_flowLayoutPanel.Controls.Count + " |";
328+
}
329+
330+
331+
332+
//
333+
//address bar
334+
//
335+
private void button2_Click(object sender, EventArgs e)
336+
{
337+
338+
339+
if (WindowState == FormWindowState.Maximized)
340+
{
341+
WindowState = FormWindowState.Normal;
342+
}
343+
344+
else if (WindowState == FormWindowState.Normal)
345+
{
346+
WindowState = FormWindowState.Maximized;
347+
348+
}
349+
350+
}
351+
352+
353+
private void button1_Click_1(object sender, EventArgs e)
354+
{
355+
Environment.Exit(Environment.ExitCode);
356+
Application.ExitThread();
357+
Application.Exit();
358+
}
359+
360+
private void button3_Click(object sender, EventArgs e)
361+
{
362+
WindowState = FormWindowState.Minimized;
363+
}
364+
365+
//move form window
366+
public const int WM_NCLBUTTONDOWN = 0xA1;
367+
public const int HT_CAPTION = 0x2;
368+
369+
[DllImportAttribute("user32.dll")]
370+
public static extern int SendMessage(IntPtr hWnd, int Msg, int wParam, int lParam);
371+
[DllImportAttribute("user32.dll")]
372+
public static extern bool ReleaseCapture();
373+
374+
private void panel1_MouseMove(object sender, MouseEventArgs e)
375+
{
376+
if (e.Button == MouseButtons.Left)
377+
{
378+
ReleaseCapture();
379+
SendMessage(Handle, WM_NCLBUTTONDOWN, HT_CAPTION, 0);
380+
}
381+
}
382+
383+
384+
385+
//
386+
//programs button [Display type of programs]
387+
//
388+
389+
//show [All]
390+
private void guna2Button1_Click(object sender, EventArgs e)
391+
{
392+
Programs_flowLayoutPanel.Controls.Clear();
393+
popuProgramItems();
394+
}
395+
//show [Coding]
396+
private void guna2Button2_Click(object sender, EventArgs e)
397+
{
398+
showItemType("Coding");
399+
}
400+
//show [Engineering]
401+
private void guna2Button3_Click(object sender, EventArgs e)
402+
{
403+
showItemType("Engineering");
404+
}
183405
}
184406
}

0 commit comments

Comments
 (0)