2012-02-28 1 views
0

런타임에 콤보 상자에 항목을 추가하는 동안이 오류가 발생합니다. 콤보 상자 데이터 소스가 설정되어 있어도 런타임에 항목을 추가 할 수있는 방법이 있습니다.DataSource 속성을 설정하면 항목 컬렉션을 수정할 수 없습니다

예 : 내 콤보 상자에 항목이 있지만 양식을로드 할 때 "범주 선택"유형의 문을 표시하려고합니다. 감사합니다 !!! 가정

+0

어떤 오류가 발생합니까? –

+1

@aF. DataSource 속성을 설정할 때 Items 컬렉션을 수정할 수 없습니다. –

답변

1

EF와

public class Product 
{ 
    public int Id {get;set;} 
    public string Name {get;set;} 
} 

var list = context.Products.Where(x = > x.Active == true).ToList(); 
list.Insert(0, new Product() { Id = -1, Name = "Please Select" }); 
selectBox.DataSource = list; 

아이디어는 첫째, 단순히 그 목록의 상단에 가짜 항목을 추가 목록 < 제품>()로 객체의 데이터베이스 목록을 얻을 수 있습니다 .

+0

답변 주셔서 감사합니다.하지만이 코드를 사용하는 데 어려움이 있습니다. –

+0

@RaggyShrestha 질문을 편집하여 바인딩하려는 객체 유형을 추가 할 수 있다면 b0rg가 자신의 답을 특별히 편집 할 수 있다고 확신합니다. 또한 답변이 작동하는 한 항상 이해하는 것이 좋기 때문에 이해하지 못하는 코드에 대해 언제든지 물어보십시오. –

0

"카테고리 선택"을 표시하려면이 작업을 시도하십시오.

DataBind() 후에이 작업을 수행 할 수 있는지는 확실하지 않지만 괜찮을 것으로 생각됩니다.

관련 문제