2013-09-12 3 views
0

My Repeater Что я хочу сделать, так это то, что я хочу привязать ответ, который я получаю от управления ретранслятором. В ответе есть поля для Name, Question, Disclaimer и т. Д. Я хочу привязать эти данные поля к элементам управления в ретрансляторе.Связать данные списка с контроллером ретранслятора

Что i`m делает это:

protected void rptCustInfo_ItemDataBound(object sender, RepeaterItemEventArgs e) 
     { 
      if (e.Item.ItemType == ListItemType.Header) 
      { 
       Label headertext = new Label(); 
       headertext = e.Item.FindControl("lblHeaderText") as Label; 
       //headertext.Text = custInfo.CustomizationName; 
       Label questiontext = new Label(); 
       questiontext = e.Item.FindControl("lblQuestionText") as Label; 
       //questiontext.Text = custInfo.QuestionText; 
       //headertext.Text = ""; 
       //headertext.Text = 
      } 
     } 

Это как создается мой ответ:

public List<CustomizationListCustomization> GetPackageCustomization(string PackageCode) 
    { 
     List<CustomizationListCustomization> arrCusts = SiteConfiguration.customizationList.Customization.Where(cust => cust.PackageList.Contains(PackageCode)).ToList(); 

     return arrCusts; 
    } 

Но я не могу найти какого-либо результата. любые предложения, как я могу это достичь? My ObjecT Response

+1

Зачем вам событие ItemDataBound? Я не вижу ничего особенного, что вы делаете в этом случае, помимо того, что он устанавливает свою ценность? Вы должны просто привязать их как

+1

Кроме того, вы можете связать параметры, такие как . Примечание. Замените текстовое поле и поле значения правильным именем свойства из класса CustomizationListCustomizationOption. –

+0

^Я делаю то же, что и вы, но это дает мне ошибку –

ответ

0
protected void rptCustInfo_ItemDataBound(object sender, RepeaterItemEventArgs e) 
    { 
     CustomizationListCustomization custItem = e.Item.DataItem as CustomizationListCustomization; 
     if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) 
     { 
      if (custItem != null) 
      { 
       Label headertext = e.Item.FindControl("lblHeaderText") as Label; 
       Label questiontext = e.Item.FindControl("lblQuestionText") as Label; 
       Label lblFooter = e.Item.FindControl("lblDisclaimerText") as Label; 
       RadioButtonList rdbOptions = e.Item.FindControl("rdbtnOption") as RadioButtonList; 

       headertext.Text = custItem.CustomizationName; 
       questiontext.Text = custItem.QuestionText; 
       lblFooter.Text = custItem.CustomizationDisclaimer; 
       ListItem radiolistitem = null; 

       if (rdbOptions != null) 
       { 
        foreach (var ip in custItem.OptionList) 
        { 
         radiolistitem = new ListItem(); 
         radiolistitem.Text = ip.OptionText + " " + ip.OptionPrice.ToString("c"); 
         radiolistitem.Value = ip.OptionText; 
         rdbOptions.Items.Add(radiolistitem); 
        } 
       } 

       //radiolistitem.Attributes.AddAttributes(ip.OptionXML) = custItem.OptionList.Where(p => p.OptionXML != null); 

      } 
     } 
    } 
Смежные вопросы