ASP.NET Webフォームアプリに関する質問です。
過去の回答をもとに新しい回答が可能な質問回答機能を考えています。
※OSはWindows7、.NET Framework4、Visual Stdio 2010、SQLserver2012、IE11を利用しています。
以下のような過去の回答一覧が格納されるテーブル(わかりやすいようにレコードはひとつだけですが、本来は複数格納され、ひとつのカード画面にひとつの回答一覧、という具合です)をコントロールを用いて表示します。
ID : int型、result1 ~ result5 : string型
表示用のラベルコントロールの内容を回答用ドロップダウンリストのデフォルトの選択肢に反映させることはできないのでしょうか。
「編集」ボタンをおすと(ボタンはItemTemplateに設置)、以下のような回答ページにとびます(別ページ)。
]
この際、遷移前のフォームビューの回答一覧を遷移後の回答ドロップダウンリストの選択肢に反映させることはできないでしょうか。
たとえば、FormViewでの表示が「はい」なら、ドロップダウンリストでデフォルト選択されているのも「はい」といった具合です。
<ドロップダウンリストの選択肢>
※ Text :「はい」 value : はい
Text :「いいえ」 value : いいえ
Text :「未回答」 value : 未回答
※9/11 追記
フォームビューのボタンがクリックされた段階で、フォームビューに回答を表示させるためのラベルの値を読み取り、セッション変数に格納するやり方を考えています。
過去回答テーブルには複数の回答一覧が格納されるため、初期(デフォルト)選択肢は固定でない方が望ましいです。
<全体(フォームビューのものです)>
<asp:FormView ID="FormView1" runat="server" DataKeyNames="ID" DataSourceID="SqlDataSource1" AllowPaging="True"> <EditItemTemplate> <br /> <table cellpadding="0" cellspacing="0" class="style3"> <tr> <td> ID</td> <td> <asp:Label ID="IDLabel" runat="server" Text='<%# Eval("ID") %>' /> </td> </tr> <tr> <td class="style4"> Result1</td> <td class="style4"> <asp:DropDownList ID="DropDownList1" runat="server" SelectedValue='<%# Bind("result1") %>'> <asp:ListItem>はい</asp:ListItem> <asp:ListItem>いいえ</asp:ListItem> <asp:ListItem>未回答</asp:ListItem> </asp:DropDownList> </td> </tr> 'ドロップダウンリスト5つ分 </table> <br /> <asp:Button ID="Button2" runat="server" CommandName="Update" Text="登録" /> <asp:Button ID="Button3" runat="server" CommandName="Cancel" Text="キャンセル" /> </EditItemTemplate> <ItemTemplate> <br /> <table cellpadding="0" cellspacing="0" class="style3"> <tr> <td> ID</td> <td> <asp:Label ID="IDLabel" runat="server" Text='<%# Eval("ID") %>' /> </td> </tr> <tr> <td> Result1</td> <td> <asp:Label ID="result1Label" runat="server" Text='<%# Bind("result1") %>' /> </td> </tr> <tr> <td> Result2</td> <td> <asp:Label ID="result2Label" runat="server" Text='<%# Bind("result2") %>' /> </td> </tr> <tr> <td> Result3</td> <td> <asp:Label ID="result3Label" runat="server" Text='<%# Bind("result3") %>' /> </td> </tr> <tr> <td> Result4</td> <td> <asp:Label ID="result4Label" runat="server" Text='<%# Bind("result4") %>' /> </td> </tr> <tr> <td> Result5</td> <td> <asp:Label ID="result5Label" runat="server" Text='<%# Bind("result5") %>' /> </td> </tr> <tr> <td> </td> <td> </td> </tr> </table> <br /> <asp:Button ID="Button1" runat="server" CommandName="Edit" Text="編集" /> </ItemTemplate> </asp:FormView> </asp:Content>
わかりにくい質問ですが、反応いただけるとありがたいです。

回答2件
あなたの回答
tips
プレビュー