コード例 #1
0
        // create project (edit mode)
        public frmCreateProject(ProjectManagerDB PM, int projectID, ref Tuple<string, string, DateTime, DateTime, DateTime, bool> project)
        {
            InitializeComponent();
            this.PM = PM;

            txtNewProjectName.Text = project.Item1;
            txtNewProjectDesc.Text = project.Item2;
            dtProjectStart.Value = project.Item3;
            dtProjectEnd.Value = project.Item5;
            cbOpenEnd.Checked = project.Item6;

            this.Text = "Updating Project";

            btnCreateProject.Text = "Update Project";
                
            btnCreateProject.Click += new EventHandler(delegate(object sender, EventArgs e)
            {
                try
                {
                    string pName = txtNewProjectName.Text.ToString();
                    string pDesc = txtNewProjectDesc.Text.ToString();

                    if (string.IsNullOrWhiteSpace(pName) || string.IsNullOrWhiteSpace(pDesc))
                    {
                        throw new Exception("Please add a name and description to this project.");

                    }

                    DateTime ps = dtProjectStart.Value;
                    DateTime pu = DateTime.Today;
                    DateTime pe = dtProjectEnd.Value;

                    if (pe < ps)
                    {
                        throw new Exception("the deadline can't be earlier than the start time.");
                    }

                    bool phd = cbOpenEnd.Checked;
                    PM.UpdateProject(projectID, pName, pDesc, ps, pu, pe, phd);
                    this.Close();
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            });

           
        }
コード例 #2
0
        // create project (create mode)
        public frmCreateProject(ProjectManagerDB PM)
        {
            InitializeComponent();
            dtProjectStart.Value = DateTime.Today;
            dtProjectEnd.Enabled = false;
            cbOpenEnd.Checked = true;
            
            btnCreateProject.Text = "Create Project";

            btnCreateProject.Click += new EventHandler(delegate(object sender, EventArgs e)
            {
                this.CreateNewProject(PM);
                this.Close();
            });

        }
コード例 #3
0
        // CreateNewProject: creates a new project
        // ------------------------------------------------------------
        // param ProjectManagerDB PM (passed from a constructor,
        // can't pass by reference because that doesn't work
        // in lambdas, won't not use lambdas because lambdas
        // are cool.)
        // -----------------------------------------------------
        private void CreateNewProject(ProjectManagerDB PM) 
        {
            try
            {
                string pName = txtNewProjectName.Text.ToString();
                string pDesc = txtNewProjectDesc.Text.ToString();

                DateTime pStart = dtProjectStart.Value;
                
                // default for projects with no end date will be t+ they will be dead so who cares.
                DateTime pEnd = DateTime.Today.AddYears(100); 

                if (cbOpenEnd.Checked == false)
                {
                    pEnd = dtProjectEnd.Value;
                }

                bool pOpen = cbOpenEnd.Checked;
                PM.AddNewProject(pName, pDesc, pStart, pStart, pEnd, pOpen);
                
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        
        
        }