丢失的手机关机了怎么找回_maven clean报错

丢失的手机关机了怎么找回_maven clean报错最近比较忙,忙的都没时间更新博客了.所以今天要一口气写两篇.WebPart中DropDownList丢失状态的解决方案,十分头痛.现象就是DropDownList老是为空.当时有些晕,上网搜了好久,要么没答案,要么含糊其词。当有些网友说用HiddenField保存状态给我一些启发,于是我朝HiddenField的方向去想。原理:HiddenField的是可以直接反映…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

最近比较忙,忙的都没时间更新博客了.

所以今天要一口气写两篇.

WebPart 中DropDownList 丢失状态 的解决方案,十分头痛.

现象就是DropDownList老是为空.

当时有些晕,上网搜了好久,要么没答案,要么含糊其词。

当有些网友说用HiddenField 保存状态给我一些启发,于是我朝HiddenField的方向去想。

原理:HiddenField的是可以直接反映到客户端的且状态值不丢失,用HiddenField的值记录DropDownList的ClientID.
而DropDownList在客户端反映为ID为ClientID的Select域的Form成员。然后当提交时在服务器端获得ID为ClientID的Select域的Form成员
的值即为DropDownList的选中值。

1、用HiddenField的值记录DropDownList的ClientID
private DropDownList DlistMember = new DropDownList();
private TextBox txtCNName = new TextBox();
private Button btnOnboard = new Button();
private Label lblMessage = new Label();
private HiddenField hiddenFiled = new HiddenField();

protected override void Render(System.Web.UI.HtmlTextWriter writer)
{

//填充 DlistMember 的数据
DlistMember.RenderControl(writer)
btnOnboard.Click += new EventHandler(btnOnboard_Click);
txtCNName.RenderControl(writer);
txtCNName.AutoPostBack = false;
btnOnboard.RenderControl(writer);
lblMessage.RenderControl(writer);
hiddenFiled.Value = DlistMember.ClientID;
hiddenFiled.RenderControl(writer);
}
protected override void CreateChildControls()//为了加上btnOnboard的Click事件
{

btnOnboard.Click += new System.EventHandler(this.btnOnboard_Click);
DlistMember.EnableViewState = true;
//DlistMember.EnableTheming = true;
//DlistMember.AutoPostBack = true;
this.Controls.Add(DlistMember);
this.Controls.Add(btnOnboard);
this.Controls.Add(hiddenFiled);
}
2、事件处理
protected void btnOnboard_Click(object sender, EventArgs e)// process btnOnboard click
{

string strValue=””;
strValue = hiddenFiled.Value.ToString().Replace(“$”,”_”);
for (int i = 0; i < this.Page.Request.Form.Count; i++)//因为$和_的混淆,这里用遍历Form的域来找到需要的域
{

string strTemp = this.Page.Request.Form.Keys[i].ToString().Replace(“$”, “_”);
if (strTemp == strValue)
{

strValue = this.Page.Request.Form[i].ToString();
isFindFrom = true;
break;
}
}
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/183967.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号