- PR -

ListコントロールのHeaderTemplateにあるコントロールについて

1
投稿者投稿内容
youhei
会議室デビュー日: 2007/01/06
投稿数: 17
投稿日時: 2008-04-27 18:52
いつもお世話になっております。

<%@ Page Language="C#" Inherits="System.Web.UI.MobileControls.MobilePage" %>
<%@ Register TagPrefix="mobile" Namespace="System.Web.UI.MobileControls" Assembly="System.Web.Mobile" %>
<%@ Register TagPrefix="mobile" Namespace="System.Data" Assembly="System.Web.Mobile" %>
<script runat="server">
protected void List1_LoadItems(object sender, LoadItemsEventArgs e)
{
int j = e.ItemIndex;

// Clear the current items
List1.Items.Clear();

// Build a section of the array
DataTable dt = new DataTable();
dt.Columns.Add("LABEL", typeof(string));
for (int i = 1; i <= e.ItemCount; i++)
{
int v = i + j;
dt.Rows.Add((v.ToString() + " List Item"));
}

// Assign the array to the list
List1.DataSource = dt;
List1.DataBind();

}

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
List1.ItemCount = 55;
List1.ItemsPerPage = 5;

//Listタイトル
ListTitle.Text = "aaaaaaaaaaaaa";
}
}

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<body>
<mobile:form id="form1" runat="server" Paginate="true">
<mobile:List ID="List1" Runat="server" OnLoadItems="List1_LoadItems" ItemsAsLinks="true">
<DeviceSpecific>
<Choice>
<HeaderTemplate>
<mobile:Label ID="ListTitle" Runat="server" />
</HeaderTemplate>
<ItemTemplate>
<%# DataBinder.Eval(((MobileListItem)Container).DataItem, "LABEL")%>:
<br />
</ItemTemplate>
<FooterTemplate>
<mobile:Link ID="Modoru" Runat="server" />
</FooterTemplate>
</Choice>
</DeviceSpecific>
</mobile:List>
</mobile:form>
</body>
</html>

上記のようなListコントロールを使用して表を表示するモバイルページがあるのですが、
HeaderTemplate内にあるIDが"ListTitle"というLABELコントロールに
表題(上記サンプルだと"aaaaaaaaaaaaa")をページロードした際にセットしているのですが、
実行すると、「名前 'ListTitle' は現在のコンテキスト内に存在しません。」との
エラーが発生してしまいます。

大変初歩的な質問で申し訳ありませんが、ページを表示の際に"ListTitle"という
LABELコントロールに動的に値をセットしたい場合、どのような記述になるのでしょうか?

宜しくお願いいたします。
1

スキルアップ/キャリアアップ(JOB@IT)