Repeater的数据显示控制
/// <summary> /// 显示控制 /// </summary> public void GetDisplayControl() { for (int i = 0; i < lstPurchaseOrder.Items.Count; i++) { string supplierPrice = ((Label)lstPurchaseOrder.Items[i].FindControl("lblSupplierPrice")).Text; //总价 string Price = ((Label)lstPurchaseOrder.Items[i].FindControl("lblPrice")).Text; //价格 string OrderCount = ((Label)lstPurchaseOrder.Items[i].FindControl("lblOrderCount")).Text; //数量 if (OrderCount=="0") { OrderCount = "1"; } ((Label)lstPurchaseOrder.Items[i].FindControl("lblPrice")).Text = (Double.Parse(supplierPrice) / Double.Parse(OrderCount)).ToString(); string lblUserLoginNameStatusCode = ((Label)lstPurchaseOrder.Items[i].FindControl("lblUserLoginNameStatusCode")).Text; //课题组状态 1可见 2不可见 if (lblUserLoginNameStatusCode=="2") { ((Label)lstPurchaseOrder.Items[i].FindControl("lblUserLoginName")).Text = ""; } } }
Repeater这种显示方法 主要是获取Repeater控件里的lbl控件数据对其进行调控!
GirdView的数据显示调控
#region 单击确定修改价格 /// <summary> /// 单击确定修改价格 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void btnSpecification_Click(object sender, EventArgs e) { try { Double price = 0; int i = 0; if (txtSpecification.Text.Length == 0) { lblState.Text = "请您输入数据再进行操作!"; } else { foreach (GridViewRow gdvRow in gdvOrderModification.Rows) { CheckBox cbx = (CheckBox)gdvRow.FindControl("cbxOrderID"); if (cbx.Checked == true) { if (ddlEquation.SelectedValue == "Unification") // 统一价格(单价) { price = Convert.ToDouble(txtSpecification.Text.ToString()); } if (ddlEquation.SelectedValue == "Addition") //在单价上加 { price = Convert.ToDouble(gdvOrderModification.Rows[i].Cells[6].Text.ToString()) + Convert.ToDouble(txtSpecification.Text.ToString()); } if (ddlEquation.SelectedValue == "Subtraction")//在单价上减 { price = Convert.ToDouble(gdvOrderModification.Rows[i].Cells[6].Text.ToString()) - Convert.ToDouble(txtSpecification.Text.ToString()); } if (ddlEquation.SelectedValue == "Multiplication")//在单价上乘 { price = Convert.ToDouble(gdvOrderModification.Rows[i].Cells[6].Text.ToString()) * Convert.ToDouble(txtSpecification.Text.ToString()); } if (ddlEquation.SelectedValue == "Division")//在单价上除以 { price = Convert.ToDouble(gdvOrderModification.Rows[i].Cells[6].Text.ToString()) / Convert.ToDouble(txtSpecification.Text.ToString()); } gdvOrderModification.Rows[i].Cells[9].Text = (Convert.ToDouble(gdvOrderModification.Rows[i].Cells[7].Text.ToString()) * price).ToString(); } i += 1; } } } catch (Exception) { lblState.Text = "您的操作有误!"; } } #endregion
修改GirdView里的价格一栏 通过选择下拉框的算法,把获得到的数据,对GirdView里价格这一列进行修改 但不是修改数据库数据,知识修改显示数据。
对此,可以看出:在绑定数据时,想要对绑定数据进行控制可以有以下几种方法:
1.在获得数据源DataTable时,通过dt.rows[0]["列名称"].Tosring();dt.rows[0][0].Tosring(); (表示第一行第一列的数据) 修改数据后在进行绑定可以达到效果。
2.在绑定时,可以在例Repeater这样的控件里使用数据显示控件,通过修改数据显示控件的值来达到效果。
3.在绑定结束后,可以在例GirdView这样的控件,通过gdvOrderModification.Rows[i].Cells[6].Text.ToString();(表示循环第 i 行第7列的数据) 获取修改数据达到显示效果。