XML 노드의 내용을 드롭 다운 목록에 많은 시도없이 바인딩하려고합니다.xml 노드의 하위 노드를 ASP.Net DropDownList에 바인딩
처음에는 전체 XML 문서가 리피터에 바인딩 -이 , 완벽하게 작동하지만는 지금은 ""노드의 아이에 따라 드롭 다운 목록을 표시해야합니다,하지만 난 루트 수준에서 데이터 가져 오기 유효하지 않다. 줄 1, dropDownList의 DataBind() 메서드에서 위치 1 오류 메시지
아무도 내가 잘못하고있는 것을 말해 줄 수 있습니까 ??
IXPathNavigable x = (IXPathNavigable)e.Item.DataItem;
XPathNavigator questionNode = x.CreateNavigator();
string question = questionNode.SelectSingleNode("questionText").ToString();
//string title = xePage.SelectSingleNode("q").InnerText;
Literal questionText = (Literal)e.Item.FindControl("litQuestionText");
questionText.Text = question;
Panel iconDiv = (Panel)e.Item.FindControl("divIcon");
iconDiv.CssClass = string.Format("icon {0}", questionNode.SelectSingleNode("iconType"));
Panel sliderPanel = (Panel)e.Item.FindControl("pnlSlider");
DropDownList answerDropDown = (DropDownList)e.Item.FindControl("ddlAnswer");
TextBox answerText = (TextBox)e.Item.FindControl("txtAnswer");
switch (questionNode.SelectSingleNode("answerType").ToString())
{
case "d":
sliderPanel.Visible = false;
answerText.Visible = false;
answerDropDown.Visible = true;
XmlDataSource answersList = new XmlDataSource();
answersList.Data = questionNode.Select("answers").ToString();
Response.Write(answersList.ToString());
//XPathNodeIterator answers = questionNode.Select("answers");
//answers.AsQueryable();
answersList.ID = questionNode.SelectSingleNode("questionId").ToString();
answerDropDown.DataSource = answersList;
answerDropDown.DataTextField = "@display";
answerDropDown.DataValueField = "@value";
answerDropDown.DataBind();
break;
case "s":
sliderPanel.Visible = true;
answerText.Visible = false;
answerDropDown.Visible = false;
break;
case "t":
sliderPanel.Visible = false;
answerText.Visible = true;
answerDropDown.Visible = false;
break;
내가 사용하고 XML은 이렇게이다 :
내가 사용하고 코드 조각은 내가 상단에있는 XML 선언을 놓쳤다
분명히<questions>
<question>
<questionId>1</questionId>
<questionText>Question here?</questionText>
<iconType>a</iconType>
<answerType>d</answerType>
<answers>
<answer value="-3" display="Extremely badly"/>
<answer value="-2" display="Very badly"/>
<answer value="-1" display="Quite badly"/>
<answer value="0" display="Neither well nor badly"/>
<answer value="1" display="Quite well"/>
<answer value="2" display="Very well"/>
<answer value="3" display="Extremely well"/>
</answers>
</question>
<question>
<questionId>1</questionId>
<questionText>Question again here?</questionText>
<iconType>b</iconType>
<answerType>s</answerType>
<answers/>
</question>
</questions>
좋아요, 그래서 XML은 AT를 모두 포맷하지 않았습니다 ... – Gem
누군가 XML을 올바르게 추가하는 방법을 알고 있다면 분명히 코드 태그를 잘라내 지 않아서 고맙겠습니다 ... – Gem
코드, xml 포함 적어도 4 칸을 들여서 서식을 지정합니다. –