0
Dropdownlist에 바인딩 된 사용자 지정 클래스가 있습니다.DropDownList - 선택한 항목의 사용자 지정 속성 가져 오기
public class RoleIdSelection
{
public string RoleID { get; set; }
public string RoleDesc { get; set; }
public string OrgCode { get; set; }
public string OrgName { get; set; }
public string link { get; set; }
}
List<RoleIdSelection> lstRoles = new List<RoleIdSelection>();
ddlUserProfile.DataSource = lstRoles;
ddlUserProfile.DataTextField = "RoleDesc";
ddlUserProfile.DataValueField = "RoleId";
ddlUserProfile.DataBind();
선택한 항목에서 속성을 가져 오는 방법은 무엇입니까? 내가
RoleIdSelection rid = ddlUserProfile.SelectedItem as RoleIdSelection;
을 시도했지만 그것은
경고 보여줍니다
참조 변환, 권투 변환, 언 박싱 변환을 통해 'RoleIdSelection'에 유형 'System.Web.UI.WebControls.ListItem을'변환 할 수 없습니다 , 변환 변환
아주 조작 올바른 RoleIdSelection을 가지고 첫 번째 옵션을합니다. 당분간 나를 구할 것이다. 그러나 asp.net이이 fuctinaltiy를 지원하지 않는 이유는 무엇입니까? 나는 winforms에서 쉽게 할 수 있다고 회상했다. –
@ user2564977 웹은 본질 상 무국적이기 때문에. 바운드 데이터는 ViewState에 저장되어야 클라이언트에 전달됩니다. 페이지 크기 및 보안 문제로 인해 수행하려는 작업이 반드시 필요한 것은 아닙니다. 따라서 선택한 항목을 직접 가져 오는 대신 바인딩 된 항목의 ID를 가져온 다음 저장 한 위치 (데이터베이스, 세션, 뷰 상태 등)에서 해당 정보를 다시 가져옵니다. – mason