UltraWebGrid에서 드롭다운 목록 간단 설정

현재 Infragistics의 UltraWebGrid를 사용 중이며, 열 중 하나에 드롭다운 목록을 구현하는 데 어려움을 겪고 있다면 혼자가 아닙니다. 많은 개발자들이 서드파티 그리드 컴포넌트를 사용하는 것과 관련하여 비슷한 어려움에 직면하고 있습니다. 공식 문서가 도움이 되지 않을 수 있지만, 이 가이드는 당신의 길을 명확히 하고 그리드 열에 드롭다운 목록을 올바르게 구현할 수 있도록 돕고자 합니다.

문제 이해하기

드롭다운 목록을 설정하려고 할 때 기대했던 값이 드롭다운에 표시되지 않을 수 있습니다. 당신의 코드에는 다음과 같은 내용이 있을 것입니다:

col.Type = ColumnType.DropDownList;
col.DataType = "System.String";
col.ValueList = myValueList;

그리고 myValueList를 다음과 같이 구성했을지도 모릅니다:

ValueList myValueList = new ValueList();
myValueList.Prompt = "My text prompt";
myValueList.DisplayStyle = ValueListDisplayStyle.DisplayText;

foreach(MyObjectType item in MyObjectTypeCollection) 
{
    myValueList.ValueItems.Add(item.ID, item.Text); // ID는 문자열입니다 (내 설계가 아님)
}

하지만 페이지에 렌더링될 때 열의 셀들은 비어 있는 것으로 보입니다. 무슨 문제가 발생하고 있는 걸까요?

해결책: 열 업데이트 허용하기

문제는 간단하면서도 중요한 한 가지 사항으로 귀결되는 경우가 많습니다: 열은 업데이트를 허용해야 합니다. 업데이트가 허용되지 않으면 UltraWebGrid는 드롭다운 목록을 올바르게 렌더링하지 않습니다.

열에 대한 업데이트를 허용하는 방법은 다음과 같습니다:

특정 열의 AllowUpdate 속성을 Yes로 설정해야 합니다. 다음 코드 한 줄로 설정할 수 있습니다:

uwgMyGrid.Columns.FromKey("colTest").AllowUpdate = AllowUpdate.Yes;

전체 통합 하기

드롭다운 목록이 올바르게 나타나도록 하기 위해 다음 단계를 통합하세요:

  1. 드롭다운 열 정의: 이미 하신 대로.
  2. ValueList 설정: myValueList와 같이.
  3. 업데이트 허용: 열 구성에 AllowUpdate 설정을 추가하는 것을 잊지 마십시오.

예제 코드

여기 통합된 예제가 있습니다:

// 열 설정
col.Type = ColumnType.DropDownList;
col.DataType = "System.String";
col.ValueList = myValueList;

// 열에 대한 업데이트 허용
uwgMyGrid.Columns.FromKey("colTest").AllowUpdate = AllowUpdate.Yes;

// ValueList 생성
ValueList myValueList = new ValueList();
myValueList.Prompt = "My text prompt";
myValueList.DisplayStyle = ValueListDisplayStyle.DisplayText;

foreach(MyObjectType item in MyObjectTypeCollection) 
{
    myValueList.ValueItems.Add(item.ID, item.Text);
}

결론

UltraWebGrid에 드롭다운 목록을 구현하는 것은 까다로운 작업일 수 있지만, 이 체크리스트와 코드 예제를 통해 과제를 극복할 수 있을 것입니다. 항상 열에 대한 업데이트가 활성화되어 있는지 확인하십시오—작은 것들이 종종 큰 차이를 만듭니다!

이 접근 방식을 통해 이제 그리드 셀에 원하는 드롭다운 목록이 채워지는 것을 볼 수 있을 것입니다. 추가적인 문제가 발생하면 그리드 및 열 속성을 다시 점검하는 것이 남은 문제를 해결하는 데 도움이 될 수 있습니다.