C# 在中继器内绑定下拉列表

C# 在中继器内绑定下拉列表,c#,asp.net,C#,Asp.net,我在中继器中绑定了一个DropDownList,下面是我的标记 挑选 左边 赖特 子串 1. 2. 3. protectedvoid Repeater2\u ItemDataBound(对象发送方,RepeaterItemEventArgs e) { 尝试 { if(e.Item.ItemType==ListItemType.Header) { DataTable dt=新的DataTable(); dt=Common.LoadExample(); DropDownList ddl=(D

我在中继器中绑定了一个
DropDownList
,下面是我的标记


挑选
左边
赖特
子串
1.
2.
3.

protectedvoid Repeater2\u ItemDataBound(对象发送方,RepeaterItemEventArgs e)
{
尝试
{
if(e.Item.ItemType==ListItemType.Header)
{
DataTable dt=新的DataTable();
dt=Common.LoadExample();
DropDownList ddl=(DropDownList)e.Item.FindControl(“DropDownList2”);
ddl.DataSource=dt;
ddl.DataTextField=“Name”;
ddl.DataValueField=“Name”;
}
}
捕获(例外情况除外)
{
投掷;
}
}

但是我无法填充下拉列表,因为断点正在跳过这里的
e.Item.ItemType==ListItemType.Header
。如何解决此问题?

对于标题行绑定,请将代码从
ItemDataBound
移动到
itemscreated

--最新答案--

只有在添加了
ItemTemplate
而没有ItemTemplate时,这才有效,设置为空的数据源将不会以预期的方式绑定网格


请添加项目模板并绑定一些虚拟数据

我正在将控件放置在标题模板中,因为如果我放置在项目模板中,这些控件将重复5次。请在此处查找一些想法,但我对这个e.item.ItemType==ListItemType有问题,第一次它等于标题,第二次它等于标题显示为false。此页面中还有一些想法它不起作用我认为问题在于e.Item.ItemType==ListItemType.Header Line我必须在ItemTemplate中保留哪些内容??为什么要添加一些虚拟数据?B但我在repeater中有数据我对此e.Item.ItemType==ListItemType.Headersis有问题您正在使用repeater,您将有一些数据要绑定,所以在item Template中绑定它,但我在填充下拉列表时遇到问题您仍然可以尝试,也许您可以得到您的解决方案!