private void delete_Selection_Btn_Click(object sender, EventArgs e) { string tmpSelectionID = ((Button)sender).ID.Split('@')[1]; //取得要刪除的選項ID string tmpQID = ((Table)this.Parent.Parent.Parent).ID.Split('@')[1]; //取得要刪除的選項所屬的問題的ID QuestionSelectionAccessor qsAccessor = (QuestionSelectionAccessor)this.Page.Session["QuestionSelectionAccessor"]; qsAccessor.deleteSelectionDataRow(tmpQID, tmpSelectionID); //在Datatable中刪除選項 ((Table)this.Parent.Parent.Parent).Rows.Remove(((TableRow)this.Parent.Parent)); }
/// <summary> /// //建構問題選擇物件和問題選項選擇物件 /// </summary> private void initQuestion_Selection_Accessor() { //if (Session["QuestionAccessorParameter"] == null) //{ // removed by dolphin @ 2006-08-10 // modified @ 2006-08-10 by dolphin, update the Session variable in any case. // Fix the bug if using Question Editor first, then use the Diagnosis no update the Session, and vice versa. Session["QuestionAccessorParameter"] = getQuestionAccessParameter(); //} qAccessor = new QuestionAccessor(Question_Edit_Type, (Hashtable)Session["QuestionAccessorParameter"], this); qsAccessor = new QuestionSelectionAccessor(qAccessor, Question_Edit_Type); Session.Add("QuestionSelectionAccessor", qsAccessor); Session.Add("QuestionAccessor", qAccessor); }
private void SetDataAccessor() { if (!IsPostBack) { ViewState.Add("Question_Edit_Type", Question_Edit_Type); initQuestion_Selection_Accessor(); } else { if (Question_Edit_Type == ViewState["Question_Edit_Type"].ToString()) { qAccessor = (QuestionAccessor)Session["QuestionAccessor"]; qsAccessor = (QuestionSelectionAccessor)Session["QuestionSelectionAccessor"]; Session["QuestionAccessorParameter"] = getQuestionAccessParameter(); } else { ViewState["Question_Edit_Type"] = Question_Edit_Type; initQuestion_Selection_Accessor(); } } }