gpt4 book ai didi

c# - 中继器控件中下拉列表的选定值 - 带有预定义的项目

转载 作者:行者123 更新时间:2023-11-30 15:04:52 30 4
gpt4 key购买 nike

我在具有预定义项的 ASP.NET 页面的转发器控件内有一个 DropDownList。在将数据绑定(bind)到转发器控件后,我将如何设置它的选定值?

例如,我有这段代码:

<asp:DropDownList ID="cboType" runat="server">
<asp:ListItem Text="Communication" Value="Communcation" />
<asp:ListItem Text="Interpersonal" Value="Interpersonal" />
</asp:DropDownList>

因为 DropDownList 控件没有 SelectedValue 前端属性,所以我无法在控件级别设置它。相反,您必须使用 列表项 的 selected 属性。理想的情况是:

<asp:DropDownList ID="cboType" runat="server" SelectedValue='<%# Eval("Type_Of_Behavior") %>'>
<asp:ListItem Text="Communication" Value="Communcation" />
<asp:ListItem Text="Interpersonal" Value="Interpersonal" />
</asp:DropDownList>

不幸的是,这行不通,有什么想法吗?

最佳答案

使用 Pankaj Garg 的代码(谢谢!)我已经设法编写了选择正确值的方法。我无法将其标记为答案,因为该答案是选择一个静态值,而不是来自数据库的值。这是函数:

protected void rpt_ItemDataBound(object sender, RepeaterItemEventArgs e)
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
DropDownList cbo = (DropDownList)e.Item.FindControl("cboType");
Behaviour b = (Behaviour)e.Item.DataItem;

for (int i = 0; i < cbo.Items.Count; i++)
{
if (b.Type_of_Behaviour == cbo.Items[i].Value)
cbo.Items[i].Selected = true;
else
cbo.Items[i].Selected = false;
}
}
}

感谢所有提供帮助的人。

关于c# - 中继器控件中下拉列表的选定值 - 带有预定义的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9687277/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com