Varlık nesneleri, Yönlendirmeler listesinden çalışan bir Tekrarlayıcı, rptReferrals'e sahip bir denetim sahibim. Yönlendirmeler nesnesinin, kullanıcılar için gönderilen Yanıtların bir listesi olan, Yanıtlar adlı başka bir tabloya bir referansı vardır. rptReferrals, bağlı olduğum Yönlendirmeler nesnesine bağlı olmayan, oturum açtığım kişi için bir Soru Listesine bir alt yineleyici, rptQuestionnaire bağlayacaktır. İşte Erişim Ebeveyn Yineleyicileri DataItem Özelliği
aspx kodudur:<asp:Repeater runat="server" ID="rptReferrals" OnItemDataBound="rptReferrals_OnItemDataBound">
<ItemTemplate>
//some HTML for the referral object
<asp:Repeater runat="server" ID="rptQuestionnaire" OnItemDataBound="rptQuestionnaire_OnItemDataBound">
//some HTML for displaying questions and answers
</asp:Repeater>
</ItemTemplate>
</asp:Repeater>
arka uç kodu:
protected void rptReferrals_OnItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
//THIS IS THE ITEM THAT HAS THE LIST OF ANSWERS I NEED
var data = e.Item.DataItem as PatientReferral;
var rptQuestionnaire = e.Item.FindControl("rptQuestionnaire") as Repeater;
rptQuestionnaire.DataSource = QuestionList;
rptQuestionnaire.DataBind();
//QuestionList is a list of questions populated on page load.
// I can't bind to the property of data.Answers because not
//all questions are answered. data.Answers is only a list of
//the questions answered
}
}
protected void rptQuestionnaire_OnItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
Need to access the data.Answers object from above. HOW????
}
}
I am having problem Soru listesi gerekli olmadığını ve ben tüm soruları görüntülemek için ihtiyaç Kullanıcının cevap verip vermediğine bakılmaksızın. Ama eğer cevap verdiyseler, cevabı göstermeliyim ki, bu da rptReferrals'a ekli olan özelliktir.
Ebeveyn tekrarlayıcımın data nesnesinin bir özelliğine nasıl erişileceğine dair herhangi bir fikir var mı? Bu noktada herhangi bir cevap alacağım.
. [Check here] (http://stackoverflow.com/questions/15137029/accessing-a-nested-repeaters-datasource) –
Dış tekrarlayıcının içeriğini ayrı bir kullanıcı kontrolüne koydum, sonra ona bir veri öğesi için istediğiniz adı taşıyan özellik. Genel olarak iyi bir fikir olduğunu söyleyebilirim, çünkü 'Container.DataItem' ismine sahip olmak iki farklı şeye kafa karıştırıyor. – millimoose