public StudABCard09Content()
        {
            InitializeComponent();
            this.Group = "綜合表現紀錄表-適應情形";
            _StudentIDList = new List<string>();
            _insertDataList = new List<UDTYearlyDataDef>();
            _updateDataList = new List<UDTYearlyDataDef>();

            _QDMang = new ABCardQuestionDataManager();
            // 讀取題目
            _QuestionDataDict = _QDMang.GetQuestionDataByGroupName(GroupName);
            _ClassGradeYearDict = Utility.GetClassGradeYearDict();

            // 會動態改變
            _RowIndexDict = new Dictionary<string, int>();
            _RowNameList = _ClassGradeYearDict.Keys.ToList();
            _RowNameList.Sort();

            int row = 0;
            foreach (string str in _RowNameList)
            {
                _RowIndexDict.Add(str, row);
                row++;
            }

            // 固定不變
            _ColumIndexDict = new Dictionary<string, int>();
            _ColumIndexDict.Add(GroupName+"_生活習慣", 1);
            _ColumIndexDict.Add(GroupName + "_人際關係", 2);
            _ColumIndexDict.Add(GroupName + "_外向行為", 3);
            _ColumIndexDict.Add(GroupName + "_內向行為", 4);
            _ColumIndexDict.Add(GroupName + "_學習動機", 5);
            _ColumIndexDict.Add(GroupName + "_服務熱忱", 6);
            _ColumIndexDict.Add(GroupName + "_人生態度", 7);

            _bgWorker = new BackgroundWorker();
            _UDTYearlyDataDict = new Dictionary<string, UDTYearlyDataDef>();
            _ChangeListener.Add(new DataGridViewSource(dgData));
            _ChangeListener.StatusChanged += new EventHandler<ChangeEventArgs>(_ChangeListener_StatusChanged);
            EventHub.CounselChanged += new EventHandler(EventHub_CounselChanged);
            _bgWorker.DoWork += new DoWorkEventHandler(_bgWorker_DoWork);
            _bgWorker.RunWorkerCompleted += new RunWorkerCompletedEventHandler(_bgWorker_RunWorkerCompleted);
        }
        public StudABCard07Content()
        {
            InitializeComponent();
            this.Group = "綜合表現紀錄表-畢業後計畫";
            _StudentIDList = new List<string>();
            _KeyNameList = new List<string>();
            _KeyNameList.Add(_keyName1);
            _KeyNameList.Add(_keyName2);
            _KeyNameList.Add(_keyName3);
            _KeyNameList.Add(_keyName4);
            _KeyNameList.Add(_keyName5);
            _KeyNameList.Add(_keyName6);
            _flpList = new List<FlowLayoutPanel>();
            _flpList.Add(flp1);
            _flpList.Add(flp2);
            _flpList.Add(flp3);
            _flpList.Add(flp4);

            _QDMang = new ABCardQuestionDataManager();
            _PriorityData1 = new UDTPriorityDataDef();
            _PriorityData2 = new UDTPriorityDataDef();
            _QuestionDict = _QDMang.GetQuestionDataByGroupName(GroupName);
            _dataMDict = new Dictionary<string, UDTMultipleRecordDef>();
            _dataPDict = new Dictionary<string, UDTPriorityDataDef>();
            _insertPriorityDataList = new List<UDTPriorityDataDef>();
            _InsertMultipleRecordDict = new Dictionary<string, UDTMultipleRecordDef>();
            _updatePriorityDataList = new List<UDTPriorityDataDef>();
            _deleteMultipleRecordList = new List<UDTMultipleRecordDef>();
            _ChangeListener.StatusChanged += new EventHandler<ChangeEventArgs>(_ChangeListener_StatusChanged);
            _ChangeListener.Add(new DataGridViewSource(dgPriority));
            LoadQuestionToUI();
            EventHub.CounselChanged += new EventHandler(EventHub_CounselChanged);
            _bgWorkerM = new BackgroundWorker();
            _bgWorkerM.DoWork += new DoWorkEventHandler(_bgWorkerM_DoWork);
            _bgWorkerM.RunWorkerCompleted += new RunWorkerCompletedEventHandler(_bgWorkerM_RunWorkerCompleted);
        }
        public StudABCard01Content()
        {
            InitializeComponent();

            _StudenIDList = new List<string>();
            _udtMrFlp01Dict = new Dictionary<string, UDTMultipleRecordDef>();
            _udtMrFlp02Dict = new Dictionary<string, UDTMultipleRecordDef>();

            _QDMang = new ABCardQuestionDataManager();
            _QuestionDict = _QDMang.GetQuestionDataByGroupName(GroupName);
            this.Group = "綜合表現紀錄表-本人概況";
            _bgWorker = new BackgroundWorker();

            List<string> grYear = Utility.GetClassGradeYear();

            if (grYear.Count > 3)
                SetDgColumn4_6Visable(true);
            else
                SetDgColumn4_6Visable(false);

            _ChangeManager = new ChangeListener();
            _ChangeManager.StatusChanged += new EventHandler<ChangeEventArgs>(_ChangeManager_StatusChanged);
            LoadQuestionToUI();
            _bgWorker.DoWork += new DoWorkEventHandler(_bgWorker_DoWork);
            _bgWorker.RunWorkerCompleted += new RunWorkerCompletedEventHandler(_bgWorker_RunWorkerCompleted);
            EventHub.CounselChanged += new EventHandler(EventHub_CounselChanged);
        }
        public StudABCard03Content()
        {
            InitializeComponent();

            this.Group = "綜合表現紀錄表-學習狀況";
            _QDMang = new ABCardQuestionDataManager();
            _StudentIDList = new List<string>();
            _YearlyDataKeyList = new List<string> ();
            _YearlyDataDict = new Dictionary<string, UDTYearlyDataDef>();
            _bgWorker = new BackgroundWorker();
            _insertDataList = new List<UDTYearlyDataDef>();
            _updateDataList = new List<UDTYearlyDataDef>();
            _insertSemesterDataList = new List<UDTSemesterDataDef>();
            _updateSemesterDataList = new List<UDTSemesterDataDef>();
            _QuestionDataDict = new Dictionary<string, QuestionData>();
            _SemesterDataDict = new Dictionary<string, UDTSemesterDataDef>();
            _SemesterDataKeyList = new List<string>();
            _SemesterDataKeyList.Add(Key1);
            _SemesterDataKeyList.Add(Key2);
            _ClassGradeYearDict = Utility.GetClassGradeYearDict();

            List<string> grYear = Utility.GetClassGradeYear();

            if (grYear.Count > 3)
                SetDgColumn4_6Visable(true);
            else
                SetDgColumn4_6Visable(false);

            // 會動態改變
            _RowIndexDict = new Dictionary<string, int>();
            _RowNameList = _ClassGradeYearDict.Keys.ToList();
            _RowNameList.Sort();

            int row = 0;
            foreach (string str in _RowNameList)
            {
                _RowIndexDict.Add(str, row);
                row++;
            }
            // 固定不變
            _ColumIndexDict = new Dictionary<string, int>();
            _ColumIndexDict.Add(GroupName + "_特殊專長", 1);
            _ColumIndexDict.Add(GroupName + "_休閒興趣", 2);
            _ColumIndexDict.Add(GroupName + "_最喜歡的學科", 3);
            _ColumIndexDict.Add(GroupName + "_最感困難的學科", 4);
            //_ColumIndexDict.Add(GroupName + "_社團幹部", 5);
            //_ColumIndexDict.Add(GroupName + "_班級幹部", 6);

            lvData.FullRowSelect = true;
            lvData.MultiSelect = false;

            _ChangeListener.StatusChanged += new EventHandler<ChangeEventArgs>(_ChangeListener_StatusChanged);
            _ChangeListener.Add(new DataGridViewSource(dgData));
            _QuestionDataDict.Clear();
            _QuestionDataDict = _QDMang.GetQuestionDataByGroupName(GroupName);
            _YearlyDataKeyList = _QuestionDataDict.Keys.ToList();
            EventHub.CounselChanged += new EventHandler(EventHub_CounselChanged);
            _bgWorker.DoWork += new DoWorkEventHandler(_bgWorker_DoWork);
            _bgWorker.RunWorkerCompleted += new RunWorkerCompletedEventHandler(_bgWorker_RunWorkerCompleted);
        }