gpt4 book ai didi

asp.net - ASP :DropDownList in ItemTemplate: Why is SelectedValue attribute allowed?

转载 作者:行者123 更新时间:2023-12-04 01:58:21 24 4
gpt4 key购买 nike

这段代码

<asp:DropDownList runat="server" ID="testdropdown" SelectedValue="2">
<asp:ListItem Text="1" Value="1"></asp:ListItem>
<asp:ListItem Text="2" Value="2"></asp:ListItem>
<asp:ListItem Text="3" Value="3"></asp:ListItem>
</asp:DropDownList>

产生此错误:

The 'SelectedValue' property cannot be set declaratively.



然而,对于数据绑定(bind)的 GridView,这是一个合法且常用的编辑模板。 SelectedValue属性当然似乎在这里以声明方式设置。
<EditItemTemplate>
<asp:DropDownList runat="server"
ID="GenreDropDownList"
DataSourceID="GenreDataSource"
DataValueField="GenreId"
DataTextField="Name"
SelectedValue='<%# Bind("Genre.GenreId") %>'>
</asp:DropDownList>
</EditItemTemplate>

问题是:允许以声明方式设置它的情况与不允许设置的情况有什么区别?错误消息暗示它永远不允许。

最佳答案

在标记中使用 SelectedValue='<%# "32"%>' 语法。(注意以下示例中单引号和双引号的顺序):

 <asp:DropDownList  ID="ddlField" SelectedValue='<%# "32" %>' 
runat="server" DataTextField="Name" DataValueField="ID" >
</asp:DropDownList>

或在 DataBinding 之后的代码隐藏中。(示例):
  ddlField.DataSource = Fields.SelectAll();
ddlField.DataBind();
ddlField.SelectedValue = "32";

关于asp.net - ASP :DropDownList in ItemTemplate: Why is SelectedValue attribute allowed?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/580487/

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