0

对于每个查找表,我都有以下代码。到目前为止,我正在为每个下拉列表控件进行复制/粘贴。但我认为有更好的方法来做到这一点。我应该能够指定、、、 DataTextField控件DataValueField名称等。当然,我将不得不在数据库端手动添加与配置相关的数据库值,例如查找表以及存储过程中的其他更改。但是在.aspx页面或.cs页面上,必须有比复制/粘贴更好的方法。

</asp:TemplateField> 
 <asp:TemplateField HeaderText="Your Ethnicity">
    <EditItemTemplate>
        <asp:DropDownList ID="ddlEthnicity" runat="server" 
            DataSourceid="ddlDAEthnicity"
            DataTextField="Ethnicity" DataValueField="EthnicityID"
            SelectedValue='<%#Bind("EthnicityID") %>'>
        </asp:DropDownList>
    </EditItemTemplate>
    <ItemTemplate >
        <asp:Label Runat="server" Text='<%# Bind("Ethnicity") %>' 
            ID="lblEthnicity">
        </asp:Label>
    </ItemTemplate>
</asp:TemplateField>     
4

2 回答 2

1

要从数据库驱动下拉控件中的内容,您可以根据您的体系结构使用许多不同的 DataSource 绑定它们。

这是一个简单的示例(将列表框更改为下拉列表):

 <asp:SqlDataSource
      id="SqlDataSource1"
      runat="server"
      DataSourceMode="DataReader"
      ConnectionString="<%$ ConnectionStrings:MyNorthwind%>"
      SelectCommand="SELECT LastName FROM Employees">
  </asp:SqlDataSource>

  <asp:ListBox
      id="ListBox1"
      runat="server"
      DataTextField="LastName"
      DataSourceID="SqlDataSource1">
  </asp:ListBox>
于 2009-04-27T15:20:35.660 回答
0

我认为自定义控件应该可以帮助您解决这个问题。

于 2009-04-27T03:53:38.260 回答