zoukankan
html css js c++ java
动态加载控件疑惑。。。。
这是在页面的代码:
1
string
IDX
=
""
;
IDX
=
Request.QueryString[
"
IDX
"
];
c_EditItem
=
(EditItem)Page.LoadControl(
"
ProductBarcodeControls/EditItem.ascx
"
);
c_EditItem.PK_ID
=
IDX;
this
.Web_contaner.Controls.Add(c_EditItem);
c_EditItem.setRunningType(ActionType.UpdatedBarcodeItem);
这里是用户控件中runingType的代码
2
public
void
setRunningType(
string
rtype)
{
switch
(rtype)
{
case
ActionType.UpdatedBarcodeItem:
SetLableToText();
code_txt.EditEnable
=
false
;
Action_pal.Visible
=
true
;
add_btn.Visible
=
false
;
this
.BindList();
break
;
case
ActionType.ViewBarcodeItem:
Action_pal.Visible
=
false
;
this
.BindList();
break
;
}
}
这里是梆定数据的代码
3
DataRow Row
=
this
.myCode.getBarcodeByIDX(
this
.PK_ID);
code_txt.Text
=
Row[BarcodeData.Code_FIELD].ToString();
partNo_txt.Text
=
Row[BarcodeData.PartNo_FIELD].ToString();
UpdatePartNO_txt.Text
=
Row[BarcodeData.NewPartNo_FIELD].ToString();
StandardPartNO_txt.Text
=
Row[BarcodeData.StandPartNO_FIELD].ToString();
Customer_txt.Text
=
Row[BarcodeData.Customer_FIELD].ToString();
status_rdb.SelectedValue
=
Row[BarcodeData.Status_FIELD].ToString().Trim().ToLower();
remark_txt.Text
=
Row[BarcodeData.Remark_FIELD].ToString();
LabelType_txt.Text
=
Row[BarcodeData.LabelType_FIELD].ToString();
LableDescritiop_txt.Text
=
Row[BarcodeData.LabelDescription_FIELD].ToString();
Description_txt.Text
=
Row[BarcodeData.Description_FIELD].ToString();
UpdateDesc_txt.Text
=
Row[BarcodeData.NewDescription_FIELD].ToString();
这里是按下update后更新的代码
4
DataRow Row
=
this
.myCode.getBarcodeByIDX(
this
.PK_ID);
Row[BarcodeData.PartNo_FIELD]
=
partNo_txt.Text.Trim();
Row[BarcodeData.NewPartNo_FIELD]
=
UpdatePartNO_txt.Text.Trim();
Row[BarcodeData.StandPartNO_FIELD]
=
StandardPartNO_txt.Text.Trim();
Row[BarcodeData.Customer_FIELD]
=
Customer_txt.Text.Trim();
Row[BarcodeData.Status_FIELD]
=
status_rdb.SelectedValue;
Row[BarcodeData.Remark_FIELD]
=
remark_txt.Text.Trim();
Row[BarcodeData.LabelType_FIELD]
=
LabelType_txt.Text.Trim();
Row[BarcodeData.LabelDescription_FIELD]
=
LableDescritiop_txt.Text.Trim();
Row[BarcodeData.Description_FIELD]
=
Description_txt.Text.Trim();
Row[BarcodeData.NewDescription_FIELD]
=
UpdateDesc_txt.Text.Trim();
Row[BarcodeData.LastModify_FIELD]
=
System.DateTime.Now;
Row.AcceptChanges();
我点击update按钮更新数据的顺序通过跟踪是
1-2-3-4
这里有个逻辑错误:
即 第3步不该执行。
按照我的想法,
数据不会被更新,因为在3步的时候重新绑定了数据。
可是结果相反,数据得到更新。
正常的逻辑应该是
1-2-4
虽然我不知道微软怎么样处理的,我按照正确的逻辑重写了2步
case
ActionType.UpdatedBarcodeItem:
SetLableToText();
code_txt.EditEnable
=
false
;
Action_pal.Visible
=
true
;
add_btn.Visible
=
false
;
if
(
!
IsPostBack)
this
.BindList();
break
;
表示在post时候,不在page load的时候重新绑定数据
查看全文
相关阅读:
Dos常用命令收集
build.xml
ActionScript. 3.0著名开源库 大集合
知识:ASP.NET ViewState
分享:JavaScript表格排序控制
分享:ViewState压缩方法
分享:获取Castle.ActiveRecord中的Nhibernate Session
分享:ASP.NET避免VIEWSTATE过大
分享:扩展Include关联查询
积累:收集常用sql
原文地址:https://www.cnblogs.com/king_astar/p/91736.html
最新文章
Android数据篇Json解析
Android进阶篇Activity管理
Android进阶篇Toast自定义显示时间
面向对象之接口
DropDownList通过数组方式实现两个DropDownList联动
面向对象设计模式与原则
Lable
面向对象之虚方法
面向对象之抽象类继承
Literal
热门文章
TextBox
Session、Cookie和Application的区别
注册脚本
了解flash player的垃圾回收机制
解决FDT下flashplayer出现的沙箱冲突问题
FLEX/FLASH BUILDER 进行AS项目开发需要注意的内存泄漏
浏览器连接数限制与页面设计
[转]Flash获取系统信息System.capabilities
学会用Flash Build进行概要分析之性能概要文件分析
JSFL 简介及资源收集
Copyright © 2011-2022 走看看