积极答复者
关于CRM Customization页面的奇怪问题

问题
-
做了一个简单的测试,在一个aspx页面上,有一个dropdownlist,一个button,一个textbox,其中的代码有:protected void Page_Load(object sender, EventArgs e){if (!IsPostBack){DropDownList1.Items.Add(new ListItem("1", "1"));DropDownList1.Items.Add(new ListItem("2", "2"));DropDownList1.Items.Add(new ListItem("3", "3"));}}protected void Button1_Click(object sender, EventArgs e){TextBox1.Text = DropDownList1.SelectedValue;}但奇怪的是我如果把页面放到ISV下面,打开页面后点击button,dropdownlist控件里面的Items会被清空,而把页面放到其他网站下面,就不会被清空,也就是说能取到DropDownList1.SelectedValue的值,而前者为空,实在不知道是为什么?ps:谁能给个好的solution?功能描述:在一个aspx,选择完DropDownList1之后,点击button,在button事件中把选择的值写到后台数据库中?
答案
-
Hi,gavingan
测试后的确存在你所说的问题,可能mscrm的custom aspx与普通的aspx有点区别吧,解决方法如下:
第一行的代码,你需要加上EnableViewState="true"
<%@ Page Language="C#" AutoEventWireup="true" EnableViewState="true" CodeFile="Test.aspx.cs" Inherits="WebApplicationTest.Test" %>
Batistuta Cai 如果您觉得对您有帮助,请点击“帖子内容有帮助”;如果你觉得回复很满意,请点击“标记为答复”- 已标记为答案 gavingan 2009年3月19日 1:35
全部回复
-
-
Hi,gavingan
测试后的确存在你所说的问题,可能mscrm的custom aspx与普通的aspx有点区别吧,解决方法如下:
第一行的代码,你需要加上EnableViewState="true"
<%@ Page Language="C#" AutoEventWireup="true" EnableViewState="true" CodeFile="Test.aspx.cs" Inherits="WebApplicationTest.Test" %>
Batistuta Cai 如果您觉得对您有帮助,请点击“帖子内容有帮助”;如果你觉得回复很满意,请点击“标记为答复”- 已标记为答案 gavingan 2009年3月19日 1:35
-
官方对 EnableViewState 的解释:指示是否在页请求之间保持视图状态。如果要保持视图状态,则为 true;否则为 false。默认值为 true。
也就是你设置了EnableViewState="true",并不是说每次都要执行page_Load的代码。
看有关下面的文章会清楚些
http://www.cftea.com/c/2007/08/H8AQ810AJM4P9OJZ.asp
Batistuta Cai 如果您觉得对您有帮助,请点击“帖子内容有帮助”;如果你觉得回复很满意,请点击“标记为答复”