我需要创建一组DropDownList
s 来显示并允许更改项目的属性组。
我的 ASP 页面上有以下代码。
<asp:Repeater runat="server" ID="repeaterProperties">
<ItemTemplate>
<p><asp:DropDownList runat="server" ID="ddProperty" OnInit="ddProperty_OnInit" /><p>
</ItemTemplate>
</asp:Repeater>
使用数据库查询ddProperty_OnInit
填充所有可能的值。DropDownList
如何DropDownList
根据Repeater
源数据设置每个创建的选定值?
A
例如,假设我们有 和 的可能属性B
值C
。
如果 的数据库输出Repeater
包含其中两个值A
和B
,则Repeater
输出两个DropDownList
s,所有 3 个值都可用,第一个A
值作为选定值,第二个B
值作为选定值。
编辑:在我的情况下,
似乎添加并选择适当的值并不是可行的方法。这是因为我还需要将可能更改的值保存到数据库中。OnItemDataBound="repeater_ItemDataBound"
Repeater
的ItemDataBound
事件在 a 上的事件Repeater
之前触发,并在保存新选择之前将所选值更改为其旧值。OnClick
Button
关于如何解决这个问题的任何建议?
当前代码:
<asp:Repeater runat="server" ID="repeaterJako" OnItemDataBound="repeater_ItemDataBound">
<ItemTemplate>
<asp:DropDownList id="ddJako" runat="server" OnInit="ddJako_OnInit">
</asp:DropDownList><br />
</ItemTemplate>
</asp:Repeater>
<asp:Button runat="server" id="updateButton" Text="Save" OnClick="update_OnClick" />
在代码隐藏中,ddJako_OnInit
使用所有可能的选择填充下拉列表,同时repeater_ItemDataBound
使用 Bryan Parker 建议的方法来选择正确的值。