당신은 어떻게 수동으로 바인딩은 복잡한 물체 템플릿을 컨트롤 다음과 같은 행에서트?

StackOverflow https://stackoverflow.com/questions/711304

문제

나는 어려움을 겪고 데이터 바인딩 구문에 여기에.예를 들어 나가는 데이터 구조는 다음과 같이-

public class Course{

public string CourseName {get;set;}

public string CourseCode {get;set;}

public List<Instructor> InstructorsTeaching{get;set;}

}

public class Instructor{

public string InstructorName{get;set;}

public string InstructorCode{get;set;}

}

지금 내가 원하는 경우 바인딩은 이 목록 과정을 말하는 것트를 수동으로 할 수 있는

<asp:TextBox runat="server" ID="tbCourseName" Text='<%# Bind("CourseName")%>'/>

를 지정하는 동안에 대한 템플릿의 격자 하지만 나는 어떻게 바인딩 강사의 교육 시설을 말하는 것 목록 상자에서 동일한 행하게 파악하는 구문에,여기에는 exaple 내가 무엇을 시도하고 실패

<asp:ListBox runat="server" ID="tbInstructors" 
     DataSource='<%# Eval("InstructorsTeaching") as List<Instructor> %>'>
    <asp:ListItem Text='<%# Bind("InstructorCode")%>' 
                 Value='<%# Bind("InstructorName")%>'/>...
 <as:ListBox/>

내가 위의 코드 작동하지 않 for sure:).이상적으로 나가고 싶은 이에서 마크업 코드 대신 뒤에 있습니다.

도움이 되었습니까?

해결책

나는 생각하지 않는 설정할 수 있는 데이터 소스는 시도하에 그것을 설정 트의 RowDataBound 이벤트

다른 팁

당신은 히트에서 중요한 이유 ASP.NET 2 양방향 데이터 바인딩을 빤:당신이 정말로 할 수 없는 중첩된 2-방법으로 데이터 바인딩.

한가지만,당신은 그것을 할 수 있습 Eval,ASP.NET 을 허용하지 않는 중첩 그래프는 구문으로 바인드 표현,(i.e<%#Bind("고객입니다.이름")%>).

을 넘어,중첩된 목록 컨트롤 다음과 같은 시나리오,각 목록에 추가로 필요 DataSource 제어합니다.당신이 설정 데이터 소스에서 당신의 목록 상자에서 작동하는 Eval 표현,그러나 바인딩에 대한 표현하는 작업을 사용해야 합니다 DataSourceID 을 제공하의 ID DataSource 제어를 제공하는 안 결과를 설정합니다.심지어 다음의 결과는 어수선하고 시끄러운 곳에서 수 있기 때문에만 업데이트 중 하나 datasource 니다.

2-데이터 바인딩 방법은 아마도 서면으로 SqlDataSource 에서 마음과하지 않 ObjectDataSource.이 있는 경우 다단계 개체 그래프,당신은 그것을 찾을 수 있습 고통을 사용하여 2 양방향 데이터 바인딩.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top