2010-07-05 2 views
2

사용자 지정 데이터 형식을 만들려고합니다. 의도는 드롭 다운 목록입니다. 현재로서는 내가 만든 컨트롤에 액세스 할 수 있지만 속성이나 값이 나타나지 않습니다. 그냥 빈 드롭 다운.Umbraco에서 사용자 지정 데이터 형식 만들기

public partial class usercontrols_admin_customDataType_CountryDropDown : 
    System.Web.UI.UserControl, 
    umbraco.editorControls.userControlGrapper.IUsercontrolDataEditor 
{ 
    public string umbracoValue; 

    protected void Page_Load(object sender, EventArgs e) 
    { 
     if (Page.IsPostBack) 
     { 
      DataSet ds = new DataSet(); 

      FormFieldBuilder countries = new FormFieldBuilder(); 
      ds = countries.GetAllCountries(); 

      ddCountries.DataSource = ds; 
      ddCountries.DataTextField = ds.Tables[0].Columns["DisplayName"].ToString(); 
      ddCountries.DataValueField = ds.Tables[0].Columns["guiCountryID"].ToString(); 
      ddCountries.DataBind(); 
     } 
    } 

    #region IUsercontrolDataEditor Members 

    public object value 
    { 
     get 
     { 
      return ddCountries.SelectedValue; 
     } 
     set 
     { 
      if (value != null) 
      { 
       ddCountries.SelectedValue = value.ToString(); 
      } 
     } 
    } 

    #endregion 
} 

답변

3

이 줄 :

if (Page.IsPostBack)

은 다음과 같아야합니다

그렇지 않으면

if (!Page.IsPostBack)

아래 양식을 제출 한 후 때까지 채워지지 않습니다 드롭 (다시 게시)

+0

스위치를 만들었으므로 이제이 오류가 나타납니다. 'ddCountries'에 항목 목록에 존재하지 않아 유효하지 않은 SelectedValue가 있습니다. 매개 변수 이름 : 값 – JGrimm

+0

이는 값의 문자열이 ddCountries 드롭 다운에 존재하지 않음을 나타냅니다. 이 코드 부분을 꺼내어 작동하는지 확인하십시오. 드롭 다운이 표시됩니다. 드롭 다운이 나타나면 값에있는 문자열을 확인하십시오 (페이지에 쓰거나 코드를 단계별로 실행). –

+0

동일한 문제가 발생합니다. 어떻게 해결 했습니까? (SelectedValue가 유효하지 않음) – Schoof

0

다운로드 U 구성 요소 애드온 & 패키지에 업로드하십시오. 거기 당신이 코드를 추가 할 필요가 없습니다이 addon의 도움으로 자신의 사용자 정의 데이터 형식을 만들 수 있습니다.

관련 문제