2016-07-21 2 views
0

I'am은 ASP.NET 웹 양식을 사용하여, 나는 이런 식으로 뭔가 할 필요가 :만약 asp.net에서 aspx 페이지에 평가 값을 조건

<asp:Panel runat="server" CssClass="cellContent" Visible='<%# (bool)Eval("IsFolder")? false:true %>'> 
         <% if(Eval("Type").ToString() == "0"){ %> 
          <asp:Image runat="server" ImageUrl="~/Content/Icon/analiza.png" Width="30px" Height="30px" ImageAlign="Left" /> 
         <% } else if(Eval("Type").ToString() == "1") {%> 
          <asp:Image runat="server" ImageUrl="~/Content/Icon/raport.png" Width="30px" Height="30px" ImageAlign="Left" /> 
         <% } %> 
        </asp:Panel> 

을하지만, I'am 오류 "데이터 바인딩 방법을 점점 Eval(), XPath() 및 Bind()는 데이터 바인딩 된 컨트롤의 컨텍스트에서만 사용할 수 있습니다. " 어떻게하면 될까요? "Type"은 0, 1, 2의 3 가지 값을 가질 수 있습니다. MVC에서 이와 같은 것은 매우 쉽지만 Web Forms와 Devexpress TreeList 컨트롤을 사용해야 만했습니다. 그러면 간단한 생각을하는 방법을 찾을 수 없습니다./

답변

0

This stackoverflow answer가 문제를 해결할 수 있습니다.

가장 쉬운 옵션은 DetailsView이고 그 값은 .DataSource이고 그 다음은 .DataBind()입니다.

<asp:DetailsView id="dvTest" runat="server"> 
    Type: <%# Eval("Type") %> 
</asp:DetailsView> 

코드에서 List() 값 (0, 1, 2)을 만듭니다. dvTest.DataSource=numbersList을 입력 한 다음 dvTest.DataBind()을 입력하십시오.