麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

asp.net開發--細節總結3【后臺動態創建控件】

2019-11-17 01:43:44
字體:
來源:轉載
供稿:網友

asp.net開發--細節總結3【后臺動態創建控件】

先看效果圖,點擊【添加】則新增一條數據,點擊相應的刪除按鈕,則刪除該條記錄;

代碼如下:

PRotected void Page_Load(object sender, EventArgs e)

{

CreateTable();

}

/// <summary>

/// 新增一條收據

/// </summary>

/// <param name="sender"></param>

/// <param name="e"></param>

protected void btn_shouju_add_Click(object sender, EventArgs e)

{

if(string.IsNullOrEmpty(txt_shouju_number.Text))

{

lb_msg_shouju.Text = "收據號碼不能為空!";

return;

}

if (ViewState["shoujuCount"] == null || ViewState["shoujuCount"].ToString() == "0")

{

ViewState["shoujuCount"] = 1;

ViewState["shoujuNumbers"] = txt_shouju_number.Text;

ViewState["shoujuStates"] = ddl_shouju_state.SelectedItem.Text;

}

else

{

string shoujuNumber = ViewState["shoujuNumbers"].ToString()+"|";

if(shoujuNumber.Contains(txt_shouju_number.Text+"|"))

{

lb_msg_shouju.Text = "已經存在該收據,請重新添加!";

return;

}

ViewState["shoujuCount"] = int.Parse(ViewState["shoujuCount"].ToString()) + 1;

ViewState["shoujuNumbers"] += "|" + txt_shouju_number.Text;

ViewState["shoujuStates"] += "|" + ddl_shouju_state.SelectedItem.Text;

}

CreateTable();

}

/// <summary>

/// 創建收據列表

/// </summary>

void CreateTable()

{

int count = ViewState["shoujuCount"] == null ? 0 : Convert.ToInt32(ViewState["shoujuCount"]);

List<string> numbers = ViewState["shoujuNumbers"] != null ? strsToList(ViewState["shoujuNumbers"].ToString()) : null;

List<string> states = ViewState["shoujuStates"] != null ? strsToList(ViewState["shoujuStates"].ToString()) : null;

tb_shouju_list.Controls.Clear();

if (count > 0)

{

#region 創建表頭

TableHeaderRow head_row = new TableHeaderRow();

TableHeaderCell head_cell_number = new TableHeaderCell();

TableHeaderCell head_cell_state = new TableHeaderCell();

TableHeaderCell head_cell_delete = new TableHeaderCell();

Literal head_lateral_number = new Literal();

head_lateral_number.Text = "收據號碼";

Literal head_lateral_state = new Literal();

head_lateral_state.Text = "收據狀態";

Literal head_lateral_delete = new Literal();

head_lateral_delete.Text = "操作";

head_cell_number.Controls.Add(head_lateral_number);

head_cell_state.Controls.Add(head_lateral_state);

head_cell_delete.Controls.Add(head_lateral_delete);

head_row.Controls.Add(head_cell_number);

head_row.Controls.Add(head_cell_state);

head_row.Controls.Add(head_cell_delete);

tb_shouju_list.Rows.Add(head_row);

#endregion

for (int i = 0; i < count; i++)

{

#region 循環遍歷創建表主體

TableRow row = new TableRow();

row.ID = "tr_" + i;

TableCell cell_number = new TableCell();

TableCell cell_state = new TableCell();

TableCell cell_delete = new TableCell();

Literal literal_number = new Literal();

literal_number.Text = numbers[i];

Literal literal_state = new Literal();

literal_state.Text = states[i];

Button btn_temp = new Button();

btn_temp.Text = "刪除";

btn_temp.Attributes["delID"] = i.ToString();

btn_temp.Click += new EventHandler(Delete_shoujuRow);

cell_number.Controls.Add(literal_number);

cell_state.Controls.Add(literal_state);

cell_delete.Controls.Add(btn_temp);

row.Controls.Add(cell_number);

row.Controls.Add(cell_state);

row.Controls.Add(cell_delete);

tb_shouju_list.Rows.Add(row);

#endregion

}

}

}

List<string> strsToList(string str)

{

if (!string.IsNullOrEmpty(str.Trim()))

{

string[] strs = str.Split('|');

List<string> list = new List<string>();

list.AddRange(strs);

return list;

}

return null;

}

/// <summary>

/// 刪除--添加的行

/// </summary>

/// <param name="sender"></param>

/// <param name="e"></param>

void Delete_shoujuRow(object sender, EventArgs e)

{

Button btn = (Button)sender;

int id = Convert.ToInt32(btn.Attributes["delID"]);

int count = ViewState["shoujuCount"] == null ? 0 : Convert.ToInt32(ViewState["shoujuCount"]);

List<string> numbers = ViewState["shoujuNumbers"] != null ? strsToList(ViewState["shoujuNumbers"].ToString()) : null;

List<string> states = ViewState["shoujuStates"] != null ? strsToList(ViewState["shoujuStates"].ToString()) : null;

if (count > 0)

{

numbers.RemoveAt(id);

states.RemoveAt(id);

ViewState["shoujuNumbers"] = string.Join("|", numbers);

ViewState["shoujuStates"] = string.Join("|", states);

ViewState["shoujuCount"] = count - 1;

}

CreateTable();

}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 欧美xxxxx视频 | 男女做性免费网站 | 久色乳综合思思在线视频 | 国产喷白浆10p | 男女一边摸一边做羞羞视频免费 | 精品国产精品久久 | 黄色网址在线视频 | 精品久久久久久久久久久久包黑料 | 国产精品视频一区二区三区四区国 | 成人国产在线看 | 羞羞答答xxdd在线播放 | 毛片a级毛片免费播放100 | 国产精品久久久久久久久久了 | 成人午夜在线免费 | 国产精品一品二区三区四区18 | av国产免费 | 色诱亚洲精品久久久久久 | 国产一级午夜 | 黄视频在线网站 | 精品国产1区2区3区 免费国产 | 999久久国精品免费观看网站 | 国产1区2区3区中文字幕 | 精品一区二区三区网站 | 九九热精品在线播放 | 成人视屏免费看 | 国产精品99久久久久久大便 | 毛片118极品美女写真 | 福利在线免费 | 亚洲影视在线 | 99麻豆久久久国产精品免费 | 免费观看三级毛片 | 久久欧美亚洲另类专区91大神 | 精品xxxx户外露出视频 | 爱性久久久久久久 | 久久精品视频黄色 | 毛片免费看电影 | 制服丝袜成人动漫 | 最新欧美精品一区二区三区 | 国产免费成人 | 欧美一级黄视频 | 天天操天天骑 |