3
オブジェクトのリストにバインドされたC#でASP.NETリピータの動的作成します私は動的にリピータを作成し、それを自分のオブジェクトリストに動的にバインドしようとしているカスタムコントロールに取り組んでいます。私のコードは次のとおりです。は、私は非常に単純なオブジェクトを持っている
private Repeater docList;
docList = new Repeater();
docList.DataSource = documentTypes;
docList.DataBind();
foreach (RepeaterItem repeatItem in docList.Items)
{
// if condition to add HeaderTemplate Dynamically only Once
if (repeatItem.ItemIndex == 0)
{
RepeaterItem headerItem = new RepeaterItem(repeatItem.ItemIndex, ListItemType.Header);
HtmlGenericControl hTag = new HtmlGenericControl("h4");
hTag.InnerHtml = "Header";
repeatItem.Controls.Add(hTag);
}
// Add ItemTemplate DataItems Dynamically
RepeaterItem repeaterItem = new RepeaterItem(repeatItem.ItemIndex, ListItemType.Item);
Label lbl = new Label();
// This part is completely broken!
lbl.Text = string.Format("Content: {0} {1} <br />", (DocumentType)repeaterItem.DataItem).ID, repeaterItem.NamingContainer);
repeatItem.Controls.Add(lbl);
// Add SeparatorTemplate Dynamically
repeaterItem = new RepeaterItem(repeatItem.ItemIndex, ListItemType.Separator);
LiteralControl ltrlHR = new LiteralControl();
ltrlHR.Text = "<hr />";
repeatItem.Controls.Add(ltrlHR);
}
ヘッダーとセパレータが機能します。現在のアイテムにアイテムテンプレートをバインドして表示させる方法を理解できません。私は今そこにあるものが完全に壊れていることを知っていますが、私は運がないいくつかのバリエーションを試しました。
正しい方向への助けや指導に感謝します。
ジョン - ありがとう、あなたのコードは完璧に機能しました!私が見たすべてのサンプルコードで、そのスニペットを見つけることができませんでした。私はそれがどこかの簡単な割り当てだったと感じました。再度、感謝します! – Dexter