ASP.Net ListView의 ListViewDataItems를 반복하고 ListView.ExtractItemValues를 사용하여 DataBoundControls에서 값을 가져 오려고합니다. 이 ITextControls 잘 작동하지만 RadioButtonList에서 선택한 항목을 가져 오는 데 문제가 있습니다. 여기 ASP.Net ListView.ExtractItemValues를 사용하여 ListViewDataItem의 RadioButtonList에서 선택한 항목을 얻는 방법은 무엇입니까?
그리고
<asp:ListView ID="lvQuiz" runat="server">
<LayoutTemplate>
<fieldset>
<ul>
<asp:PlaceHolder ID="itemplaceholder" runat="server"></asp:PlaceHolder>
</ul>
</fieldset>
<asp:Button ID="cmdSubmit" runat="server" Text="Submit" OnClick="cmdSubmit_Click" />
</LayoutTemplate>
<ItemTemplate>
<li>
<fieldset>
<legend>
<asp:Label ID="lblQuestionText" runat="server" Text='<%# Bind("Question.QuestionText") %>' />
</legend>
<asp:RadioButtonList ID="rblResponse" runat="server" DataTextField="ResponseText" DataValueField="Id"
DataSource='<%# Bind("Question.PossibleResponses") %>'>
</asp:RadioButtonList>
</fieldset>
</li>
</ItemTemplate>
내가 값을 추출하려고 코드입니다 :
var Q = (Quiz)Session["Quiz"];
foreach (var item in lvQuiz.Items)
{
var itemValues = new OrderedDictionary();
lvQuiz.ExtractItemValues(itemValues, item, true);
var myQuestion = Q.UserResponses.Keys
.Where(x => x.QuestionText == itemValues["Question.QuestionText"])
.Single();
Q.UserResponses[myQuestion] = itemValues["Question.PossibleResponses"].SelectedItem
}
내 문제가 그 마지막 줄에있다
여기 내 마크 업입니다. "Question.PossibleResponses"는 RadioButtonList에 바인딩되지만 itemValues [ "Question.PossibleResponses"] 값은 내 모든 RadioButtonList 옵션의 목록을 반환합니다. 사용자가 어떤 것을 선택했는지 어떻게 알 수 있습니까?