0

我正在尝试在 EditItemTemplate 的 ListView 中绑定 DropDownList 中的数据,但它没有用。

代码:

<asp:DropDownList ID="DropDownList1" runat="server" SelectedValue='<%# Bind("type")%>'>
    <asp:ListItem Text="Fatwa" Value="1"></asp:ListItem>
    <asp:ListItem Text="Interviewer" Value="2"></asp:ListItem>
    <asp:ListItem Text="Programs" Value="3"></asp:ListItem>
</asp:DropDownList>
4

2 回答 2

0

我的代码运行良好,但我忘记在列表视图中输入 DataKeyNames :D

<asp:ListView ID="TodayOrdersList" runat="server" DataSourceID="SqlDataSource1" DataKeyNames="ID">
于 2012-09-29T19:23:33.073 回答
0

这是您可以使用的概念示例:

    <EditItemTemplate>
        <asp:Label ID="DataLabel" runat="server" Text="<% $resources:AppResource,UserData %>"
            CssClass="OneColumnTitleLabel"></asp:Label>
        <br />
        <br />
        <asp:Label ID="EmailLabel" CssClass="RightColumnLabel" runat="server" Text='<%# Resources.AppResource.Email + ":" %>'></asp:Label><br />
        <asp:TextBox ID="EmailTextBox" runat="server" CssClass="RightColumnText" Text='<%# Eval("Email") %>'
            ReadOnly="true"></asp:TextBox>
        <br />
        <asp:Label ID="LanguageLabel" CssClass="RightColumnLabel" runat="server" Text='<%# Resources.AppResource.Language + ":" %>'></asp:Label><br />
        <asp:DropDownList ID="LanguageDropDown" runat="server" CssClass="RightColumnDropDown"
            DataSourceID="LanguageDataSource" DataTextField="Name" DataValueField="Id" SelectedValue='<%# Bind("LanguageId") %>'
            AppendDataBoundItems="True">
            <asp:ListItem Value="" Text="" Selected="True">
            </asp:ListItem>
        </asp:DropDownList>
        <br />
        <asp:Label ID="Label2" CssClass="RightColumnLabel" runat="server" Text='<%# Resources.AppResource.Company + ":" %>'></asp:Label><br />
        <asp:TextBox ID="CompanyTextBox" runat="server" CssClass="RightColumnText" Text='<%# Bind("Company") %>'></asp:TextBox>
        <br />
        <asp:Label ID="PhoneLabel" CssClass="RightColumnLabel" runat="server" Text='<%# Resources.AppResource.Phone + ":" %>'></asp:Label><br />
        <asp:TextBox ID="PhoneTextBox" runat="server" CssClass="RightColumnText" Text='<%# Bind("Phone") %>'></asp:TextBox>
        <br />
        <asp:Button ID="UpdateUserData" runat="server" Text='<%# Resources.AppResource.Save %>'
            CssClass="Button" CommandName="Update" CausesValidation="true" />
    </EditItemTemplate>

注意 LanguageDropDown(LanguageId 绑定回列表视图)。此下拉列表绑定到如下数据源:

<asp:ObjectDataSource ID="LanguageDataSource" runat="server" SelectMethod="GetLanguages"
    TypeName="GP.Solutions.Services.LanguageManager"></asp:ObjectDataSource>

这是您可以在列表视图中绑定下拉列表的方式。

于 2012-09-29T19:07:21.897 回答