Esempio n. 1
0
        //畫面取得
        void BGW_FormLoad_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            btnReport.Enabled = true;
            btnSave.Enabled   = true;
            this.Text         = "成績輸入";

            if (e.Cancelled)
            {
                MsgBox.Show("資料取得已被中止");
            }
            else
            {
                if (e.Error == null)
                {
                    dataGridViewX1.AutoGenerateColumns = false;
                    RowList.Sort(SortSCJ);
                    dataGridViewX1.DataSource = RowList;

                    //Log
                    foreach (SCJoinRow each in RowList)
                    {
                        if (!_logDic.ContainsKey(each.SCJoinID))
                        {
                            _logDic.Add(each.SCJoinID, new Log_Result(ColumnDic.Keys.ToList(), each.SCJ));
                            _logDic[each.SCJoinID]._stud = each.student;
                            if (!string.IsNullOrEmpty(each.student.RefClassID))
                            {
                                if (ClassDic.ContainsKey(each.student.RefClassID))
                                {
                                    _logDic[each.SCJoinID]._class = ClassDic[each.student.RefClassID];
                                }
                            }
                        }
                    }

                    //學期成績資料
                    foreach (DataGridViewRow row in dataGridViewX1.Rows)
                    {
                        SCJoinRow scjRow = (SCJoinRow)row.DataBoundItem;
                        if (scjRow.RSR != null)
                        {
                            if (scjRow.RSR.ResultScore.HasValue)
                            {
                                row.Cells[colClearing].Value = scjRow.RSR.ResultScore.Value;
                            }
                        }
                    }

                    //分項成績資料與試算
                    if (GetPoint._wp != null)
                    {
                        foreach (DataGridViewRow row in dataGridViewX1.Rows)
                        {
                            //把資料顯示在畫面上
                            SetValueToRow(row);
                            //試算學期成績
                            SetRowResults(row);
                        }
                    }
                    else
                    {
                        MsgBox.Show("尚未設定評量比例\n將無法試算出總成績資料!!");
                    }
                    _ChangeListener.Reset();
                    _ChangeListener.ResumeListen();
                    IsChangeNow = false;
                }
                else
                {
                    MsgBox.Show("發生錯誤:\n" + e.Error.Message);
                }
            }
        }
Esempio n. 2
0
        void BGW_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            SetFrom   = true;
            this.Text = "新增社團";
            if (e.Cancelled)
            {
                MsgBox.Show("資料取得中止");
                return;
            }

            if (e.Error != null)
            {
                MsgBox.Show("部份資料取得發生錯誤!!");
                return;
            }

            intSchoolYear.Value = _DefaultSchoolYear;
            intSemester.Value   = _DefaultSemester;

            #region 社團老師

            cbTeacher.Items.Clear();
            cbTeacher.Text          = "";
            cbTeacher.DisplayMember = "TeacherFullName";
            cbTeacher.Items.AddRange(TeacherList.ToArray());

            cbTeacher2.Items.Clear();
            cbTeacher2.Text          = "";
            cbTeacher2.DisplayMember = "TeacherFullName";
            cbTeacher2.Items.AddRange(TeacherList.ToArray());

            cbTeacher3.Items.Clear();
            cbTeacher3.Text          = "";
            cbTeacher3.DisplayMember = "TeacherFullName";
            cbTeacher3.Items.AddRange(TeacherList.ToArray());

            #endregion

            #region 場地資料

            cbLocation.Items.Clear();
            cbLocation.Items.AddRange(ClubLocation.ToArray());

            #endregion

            #region 社團類型
            cbCategory.Items.Clear();
            cbCategory.Items.AddRange(ClubCategory.ToArray());

            #endregion

            #region 科別資訊
            listDepartment.Items.Clear();
            List <string> list = new List <string>();
            foreach (string each in deptList)
            {
                if (string.IsNullOrEmpty(each))
                {
                    continue;
                }

                if (list.Contains(each))
                {
                    continue;
                }

                list.Add(each);
                ListViewItem item = new ListViewItem();
                item.Tag  = each;
                item.Text = each;
                listDepartment.Items.Add(item);
            }
            _ChangeListener.Reset();
            _ChangeListener.ResumeListen();
            IsChangeNow = false;
            #endregion
        }