ストアド プロシージャ コールから asp.net Web ページ (ポップアップ) にリピーターを設定しています。値に基づいてハイパーリンクを動的に作成する必要がある列があり、元の Web フォームに問い合わせを呼び戻します。ただし、問題は、リンクをクリックしたときに、他のデータも取得して、このデータをビューステートに挿入する必要があることです。
私が呼び出している「GetListOfValues」関数は、明らかに、これをコーディングした方法では機能しません。これを達成する方法はありますか?
これが私の例です:
デフォルト.aspx
<asp:Repeater ID="rptReport" runat="server">
<HeaderTemplate>
<table>
<tr>
<td>Name</td>
<td>ID</td>
<td>Value1</td>
<td>Value2</td>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td><%# DataBinder.Eval(Container.DataItem,"Name") %></td>
<td><%# DataBinder.Eval(Container.DataItem,"ID") %></td>
<td><%# DataBinder.Eval(Container.DataItem,"Value1") %></td>
<td><%# GetValueTwoLink(Eval("Name"),Eval("Value2") %></td>
</tr>
</ItemTemplate>
<FooterTemplate>
<tr>
<%--This area holds totals for columns--%>
</tr>
</table>
</FooterTemplate>
</asp:Repeater>
Default.aspx.cs
protected string GetValueTwoLink(object name, object value2)
{
ViewState["ListOfValues"] = datalayer.GetListOfValues(name, value2);
return string.Format(
"<a href=\"#\" onlick=\"window.opener.ViewValues('{0}')\">{1}</a>",
name,
Convert.ToInt32(value2).ToString("d"));
}
どんな助けでも大歓迎です!