📄 strategymanager.aspx.cs
字号:
using System;
using System.Data;
using System.Configuration;
using System.Collections.Generic;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using ExaminationSystem.BLL.Service;
using ExaminationSystem.BLL.Domain;
public partial class Teacher_Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
long subjectId = long.Parse(Request.QueryString["SubjectId"].ToString());
ChapterNode root = new ChapterNode(subjectId);
TreeViewHelper.CreateTreeView(root, TreeView1);
BindStrategyDropDownList();
}
}
private void BindStrategyDropDownList()
{
StrategyDropDownList.DataSource = GetCurrentSubject().PaperStrategys;
StrategyDropDownList.DataTextField = "Name";
StrategyDropDownList.DataValueField = "ID";
StrategyDropDownList.DataBind();
if (StrategyDropDownList.Items.Count > 0)
StrategyDropDownList.SelectedIndex = 0;
BindStrategyContainerList();
}
private void BindStrategyContainerList()
{
if (StrategyDropDownList.Items.Count == 0)
return;
StrategyContainerDropDownList.DataSource = GetCurrentPaperStrategy().StrategyContainers;
StrategyContainerDropDownList.DataTextField = "Title";
StrategyContainerDropDownList.DataValueField = "ID";
StrategyContainerDropDownList.DataBind();
if (StrategyContainerDropDownList.Items.Count > 0)
StrategyContainerDropDownList.SelectedIndex = 0;
BindStrategyItemList();
}
private void BindStrategyItemList()
{
if (StrategyContainerDropDownList.Items.Count == 0)
{
StrategyItemListBox.DataSource = null;
StrategyItemListBox.DataBind();
return;
}
StrategyItemListBox.DataSource = GetCurrentStrategyContainer().StrategyItems;
StrategyItemListBox.DataTextField = "Name";
StrategyItemListBox.DataValueField = "ID";
StrategyItemListBox.DataBind();
if (StrategyItemListBox.Items.Count > 0)
StrategyItemListBox.SelectedIndex = 0;
BindSelectedQuestionList();
}
private void BindSelectedQuestionList()
{
if (StrategyItemListBox.Items.Count == 0)
{
SelectedQuestionGridView.DataSource = null;
SelectedQuestionGridView.DataBind();
ScoreValueTextBox.Text = "";
QuestionCountTextBox.Text ="";
return;
}
StrategyItem item = GetCurrentStrategyItem();
SelectedQuestionGridView.DataSource = item.QuestionContents;
SelectedQuestionGridView.DataBind();
ScoreValueTextBox.Text = item.ScoreValue.ToString();
QuestionCountTextBox.Text = item.Count.ToString();
}
private Subject GetCurrentSubject()
{
long subjectId = long.Parse(Request.QueryString["SubjectId"].ToString());
return new SubjectService().GetById(subjectId);
}
private PaperStrategy GetCurrentPaperStrategy()
{
return new PaperStrategyService().GetById(long.Parse(StrategyDropDownList.SelectedValue));
}
private StrategyContainer GetCurrentStrategyContainer()
{
return new StrategyContainerService().GetById(long.Parse(StrategyContainerDropDownList.SelectedValue));
}
private StrategyItem GetCurrentStrategyItem()
{
return new StrategyItemService().GetById(long.Parse(StrategyItemListBox.SelectedValue));
}
protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e)
{
BindQuestionList();
}
private void BindQuestionList()
{
Chapter chapter = new ChapterService().GetById(long.Parse(TreeView1.SelectedNode.Value));
IList<QuestionContent> resultList = new List<QuestionContent>();
foreach (QuestionContent question in chapter.QuestionContents)
{
if (questionTypeDD.SelectedValue == question.QuestionType && (Hard)int.Parse(hardDD.SelectedValue) == question.Hard)
{
resultList.Add(question);
}
}
QuestionGridView.DataSource = resultList;
QuestionGridView.DataBind();
}
protected void questionTypeDD_SelectedIndexChanged(object sender, EventArgs e)
{
BindQuestionList();
}
protected void hardDD_SelectedIndexChanged(object sender, EventArgs e)
{
BindQuestionList();
}
protected void SelectButton_Click(object sender, EventArgs e)
{
StrategyItem item = GetCurrentStrategyItem();
foreach (TableRow row in QuestionGridView.Rows)
{
CheckBox box= (CheckBox)row.Cells[2].Controls[1];
if (box.Checked == true)
{
QuestionContent question = new QuestionContentService().GetById(long.Parse(box.Text));
if (!item.StrategyContainer.PaperStrategy.HasQuestion(question))
item.QuestionContents.Add(question);
else
{
Label1.Text += question.ID + ",";
}
}
}
if (Label1.Text.Length > 0)
Label1.Text += "已经添加过了!";
SelectedQuestionGridView.DataSource = item.QuestionContents;
SelectedQuestionGridView.DataBind();
new StrategyItemService().Update(item);
}
protected void AddStrategyButton_Click(object sender, EventArgs e)
{
PaperStrategy strategy = new PaperStrategy();
strategy.Name = StrategyTextBox.Text;
strategy.Subject = GetCurrentSubject();
new PaperStrategyService().Save(strategy);
ListItem item = new ListItem(strategy.Name, strategy.ID.ToString());
StrategyDropDownList.Items.Add(item);
StrategyDropDownList.SelectedIndex = -1;
item.Selected = true;
BindStrategyContainerList();
}
protected void RemoveSeletedButton_Click(object sender, EventArgs e)
{
StrategyItem item = GetCurrentStrategyItem();
foreach (TableRow row in SelectedQuestionGridView.Rows)
{
CheckBox box = (CheckBox)row.Cells[0].Controls[1];
if (box.Checked == true)
{
item.QuestionContents.Remove(new QuestionContentService().GetById(long.Parse(box.Text)));
}
}
SelectedQuestionGridView.DataSource = item.QuestionContents;
SelectedQuestionGridView.DataBind();
new StrategyItemService().Update(item);
}
protected void AddStrategyContainerButton_Click(object sender, EventArgs e)
{
StrategyContainer container = new StrategyContainer();
container.Title = StrategyContainerTextBox.Text;
container.PaperStrategy = GetCurrentPaperStrategy();
new StrategyContainerService().Save(container);
ListItem item = new ListItem(container.Title, container.ID.ToString());
StrategyContainerDropDownList.Items.Add(item);
StrategyContainerDropDownList.SelectedIndex = -1;
item.Selected = true ;
BindStrategyItemList();
}
protected void StrategyDropDownList_SelectedIndexChanged(object sender, EventArgs e)
{
BindStrategyContainerList();
}
protected void AddStrategyItemButton_Click(object sender, EventArgs e)
{
StrategyItem item = new StrategyItem();
item.Name = StrategyItemTextBox.Text;
item.StrategyContainer = GetCurrentStrategyContainer();
new StrategyItemService().Save(item);
ListItem listitem = new ListItem(item.Name, item.ID.ToString());
StrategyItemListBox.Items.Add(listitem);
StrategyItemListBox.SelectedIndex = -1;
listitem.Selected = true;
BindSelectedQuestionList();
}
protected void StrategyContainerDropDownList_SelectedIndexChanged(object sender, EventArgs e)
{
BindStrategyItemList();
}
protected void DeleteStrategyButton_Click(object sender, EventArgs e)
{
new PaperStrategyService().DeleteById(long.Parse(StrategyDropDownList.SelectedValue));
StrategyDropDownList.Items.Remove(StrategyDropDownList.SelectedItem);
BindStrategyContainerList();
}
protected void DeleteStrategyContainerButton_Click(object sender, EventArgs e)
{
new StrategyContainerService().DeleteById(long.Parse(StrategyContainerDropDownList.SelectedValue));
StrategyContainerDropDownList.Items.Remove(StrategyContainerDropDownList.SelectedItem);
BindStrategyItemList();
}
protected void DeleteStrategyItemButton_Click(object sender, EventArgs e)
{
new StrategyItemService().DeleteById(long.Parse(StrategyItemListBox.SelectedValue));
StrategyItemListBox.Items.Remove(StrategyItemListBox.SelectedItem);
if (StrategyItemListBox.Items.Count > 0)
{
StrategyItemListBox.SelectedIndex = 0;
BindSelectedQuestionList();
}
}
protected void StrategyItemListBox_SelectedIndexChanged(object sender, EventArgs e)
{
BindSelectedQuestionList();
}
protected void SaveStrategyItemBT_Click(object sender, EventArgs e)
{
StrategyItem item = GetCurrentStrategyItem();
item.ScoreValue = int.Parse(ScoreValueTextBox.Text);
item.Count = int.Parse(QuestionCountTextBox.Text);
new StrategyItemService().Update(item);
Label1.Text = "保存成功!";
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -