Public Class TasksList Public Sub refresh_data() dgv_all.SuspendLayout() bs_tasklist.SuspendBinding() 'Better Using OrderBY bs_tasklist.DataSource = To_DoList.GetInstance.Tasks.OrderBy(Function(x) x.Status).ToList() dgv_all.DataSource = Nothing dgv_all.DataSource = bs_tasklist bs_tasklist.ResumeBinding() dgv_all.ResumeLayout() 'Sorting Failed :(, Need more research 'dgv_all.Sort(Status, System.ComponentModel.ListSortDirection.Ascending) Dim Tasks As TaskItem Dim Incomplete As List(Of TaskItem) = New List(Of TaskItem) Dim Overdue As List(Of TaskItem) = New List(Of TaskItem) Dim DateNow As Date = Date.Now For i As Integer = 0 To dgv_all.Rows.Count - 1 Tasks = CType(dgv_all.Rows(i).DataBoundItem, TaskItem) If Tasks.Priority = TaskPriority.High Then dgv_all.Rows(i).DefaultCellStyle.ForeColor = Color.Red ElseIf Tasks.Priority = TaskPriority.Low Then dgv_all.Rows(i).DefaultCellStyle.ForeColor = Color.Green End If If Tasks.Status = TaskStatus.Complete Then dgv_all.Rows(i).DefaultCellStyle.Font = New Font(Me.Font, FontStyle.Strikeout) Else Incomplete.Add(Tasks) End If If Tasks.DateDue < DateNow.Date Then Overdue.Add(Tasks) End If Next dgv_incomplete.SuspendLayout() dgv_incomplete.DataSource = Nothing dgv_incomplete.DataSource = Incomplete dgv_incomplete.ResumeLayout() dgv_overdue.SuspendLayout() dgv_overdue.DataSource = Nothing dgv_overdue.DataSource = Overdue dgv_overdue.ResumeLayout() My.Forms.ParentForm.Stats() End Sub
Private Sub btn_taskSave_Click(sender As Object, e As EventArgs) Handles btn_taskSave.Click Dim DateNow As Date = Date.Now If tb_name.Text = String.Empty Or tb_name.Text = "Type Name Here" Then MsgBox("Please enter valid name") Else If chb_completed.Checked = True Then Task.Status = TaskStatus.Complete Else Task.Status = TaskStatus.Incomplete End If Task.Name = tb_name.Text Task.DateDue = dtp_datedue.Value Task.Description = rtb_description.Text If rb_high.Checked = True Then Task.Priority = TaskPriority.High ElseIf rb_normal.Checked = True Then Task.Priority = TaskPriority.Normal ElseIf rb_low.Checked = True Then Task.Priority = TaskPriority.Low End If If NewTask = True Then Task.DateCreated = DateNow.Date End If 'woaah it's duplicating, if statement saves the world If NewTask = False Then To_DoList.GetInstance.Tasks.Remove(Me.Task) End If To_DoList.GetInstance.Tasks.Add(Me.Task) Me.Close() End If End Sub
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)