Umbraco 4.7.0 デプロイメントから Umbraco 6.2.1 デプロイメントに単純なプロジェクトを移植しようとしています。プロジェクトは 471 で正常に動作しますが、621 展開で実行すると、コード ビハインドによってフォーム値が取得されません。値は表示Request.form[uniqueId]
されますが、ドロップダウンで選択した値が空白です。
コントロールはイベントで作成され、OnInit
イベントで値を取得しようとしますPage_Load
。
ここで私が間違っていることは明らかですか?これが 621 で機能しなくなる明らかな理由はありますか?
ページ:
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="Search.ascx.cs" Inherits="MyApp.Search" EnableViewState="true" ViewStateMode="Enabled" %>
<form runat="server" enableviewstate="true">
<asp:PlaceHolder ID="placeHolder" runat="server" EnableViewState="true" />
</form>
背後にあるコード:
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
DropDownList ddlCriteria = new DropDownList();
ddlCriteria.ClientIDMode = System.Web.UI.ClientIDMode.Static;
ddlCriteria.ID = "organizationId";
ddlCriteria.EnableViewState = true;
ddlCriteria.ViewStateMode = System.Web.UI.ViewStateMode.Enabled;
ddlCriteria.Items.Clear();
ddlCriteria.Items.Add(new ListItem("1", "1"));
ddlCriteria.Items.Add(new ListItem("2", "2"));
ddlCriteria.Items.Add(new ListItem("3", "3"));
placeHolder.Controls.Add(ddlCriteria);
}
protected void Page_Load(object sender, EventArgs e)
{
Page.MaintainScrollPositionOnPostBack = false;
DropDownList ddlCriteria = (DropDownList)placeHolder.FindControl("organizationId");
String organizationId = ddlCriteria.SelectedValue; // Always blank.
}
助けてくれてありがとう。