0
범위를 벗어나는 예외없이 asp.net 라이프 사이클 메서드에서이 개체를 만들 수 있습니다. 현재 값을 포함하는 리소스 컬렉션을 얻을 수있는 유일한 곳은 웹 스케줄 정보에 대한 onreasourcefetch 메소드입니다. 하지만 webscheduleinfo가 생성되고보기가 사용자로 채워지기 전에이 작업을 수행해야합니다.리소스 컬렉션 항목에 액세스 할 때 ArgumentOutOfRangeException이 발생했습니다.
protected void Page_Init(object sender, EventArgs e)
{
ResourcesCollection resources = WebScheduleInfo1.VisibleResources;
int count = resources.Count;
Resource obje = (Resource)resources.GetItem(1);
string name = obje.Name;
resources.Clear();
resources.Add(obje);
this.WebScheduleInfo1.ActiveResourceName = name;
}
이를 Page_Load에서 컬렉션의 항목이 있습니까? 그렇지 않은 경우 WebSchedule을 바인딩하는 방법에 대한 관련 코드를 제공하십시오. – alhalama
이 코드는 페이지로드에서 작동하지 않습니다. (나는 현재 아무것도 없습니다.) 지금은 디자인 타임보기의 컨트롤을 사용하여 웹 일정 바인딩을 사용하고 있습니다. 리소스 컬렉션에 액세스 할 수 있도록 적어도 하나의 webscheduleinfo 컨트롤이 만들어져 있어야합니다. 거기에서 나는 얼마나 많은 리소스를 가지고 있는지 알아야 각 리소스에 대한 webdayview 컨트롤을 동적으로 만들 수 있습니다. WebscheduleInfo는 page_load 이벤트 이후에 자원을 페치하므로 이전에 해당 콜렉션에 액세스 할 수 없습니다. 얼마나 많은 컨트롤을 생성해야하는지 모르게 컨트롤을 동적으로 만들 수 없습니다. – zms6445
현재이 정보를 얻기 위해 디자인보기에서 무엇을 바인딩하고 있습니까? SqlDataProvider를 사용하는 SqlDataSource입니까? 데이터베이스의 리소스 수를 직접 가져 오거나 GenericDataProvider를 사용하여 데이터에 액세스 할 수있는 방식을 변경하는 옵션이 있습니까? – alhalama