1

ASP.NET プロジェクトをバージョン 2.0 から 4.0 に移行しています

以前のバージョンでは、以下のコード行が指定されていました。

<asp:CheckBox runat="server" ID="chkContentFilter" 
       Text="<%# SearchResultDictionary.ContentFilter %>" 
       OnCheckedChanged="chkFilterCheckbox_ValueChanged" AutoPostBack="True"
       EnableViewState="True" ></asp:CheckBox>

問題は、ASP.NET 4.0<%# %>サーバー タグがデータをコントロールにマップしないことです。

もちろん、コード ビハインドでコントロール テキストを設定する回避策があります。しかし興味深いのですが、aspx レイアウトにテキストをバインドする方法はありますか?

4

1 に答える 1

3

評価されるDataBind()ためには、コンテナーまたはコントロール自体を呼び出す必要があります。<%# %>

データバインディング式

マークアップ:

<asp:CheckBox runat="server" ID="chkContentFilter" 
       Text='<%# SearchResultDictionary.ContentFilter %>' 
       OnCheckedChanged="chkFilterCheckbox_ValueChanged" AutoPostBack="True"
       EnableViewState="True" ></asp:CheckBox>

分離コード:

chkContentFilter.DataBind();
于 2012-08-03T13:15:50.863 に答える