Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 带下拉列表问题的数据绑定FormView_C#_Asp.net_Ddl_Formview - Fatal编程技术网

C# 带下拉列表问题的数据绑定FormView

C# 带下拉列表问题的数据绑定FormView,c#,asp.net,ddl,formview,C#,Asp.net,Ddl,Formview,我正在努力实现以下目标: 取消FormView的默认编辑链接按钮 使用当前数据和其他DDL数据选择,在页面的编辑模式下显示FormView 目前,我需要根据id=x等将DDL绑定到当前数据库值: <asp:DropDownList ID="DropDownList1" runat="server" SelectedValue='<%# Bind("xxx") %>' DataSourceID="xxx" DataTextField="xxx" DataValueField="

我正在努力实现以下目标:

  • 取消
    FormView的
    默认编辑链接按钮

  • 使用当前数据和其他DDL数据选择,在
    页面的
    编辑模式下显示
    FormView

  • 目前,我需要根据
    id=x
    等将DDL绑定到当前数据库值:

    <asp:DropDownList ID="DropDownList1" runat="server"
    SelectedValue='<%# Bind("xxx") %>' 
    DataSourceID="xxx"
    DataTextField="xxx"
    DataValueField="xxx"
    ondatabound="DropDownList1_DataBound">
    

    一定有更好的办法

    不知道您是如何连接到数据库的,但是如果您使用datacontext,linq to sql是一种很好的方法。您的“ddl”将有一个onLoad事件,您可以在代码隐藏中使用查询。例如:

    <asp:DropDownList ID="DropDownList1" runat="server"
                      onLoad="DropDownList1_Load"
                      AutoPostBack="true" />
    

    DropDownList1
    是否没有从您链接的
    数据源获取这些结果?为什么必须手动填充它?因此,要明确的是,您希望从数据库动态填充
    DropDownList
    ?如果是这样,为什么要手动添加它们,从数据库中提取它们的代码在哪里?在Stackoverflow上,更多信息总是更好:)Hi Brian-DDL确实包含从查询到数据源的单个数据项。我手动添加的项是我希望添加到DDL的附加数据集。因此,用户可以看到原始记录项,并可能通过附加的DDL项(我手动添加的项)选择一个新项(用于记录更新)。我手动添加的数据存在,但我不确定如何将其绑定到DDL。谢谢Ratan-你给了我一些想法!不客气。如果你能投赞成票或标上答案,我将不胜感激。
    <asp:DropDownList ID="DropDownList1" runat="server"
                      onLoad="DropDownList1_Load"
                      AutoPostBack="true" />
    
    protected void DropDownList1_Load(object sender, EventARgs e)
    {
        YourDataContext db = new YourDataContext();
        var qry = from a in db.table1
                  select a;
        foreach(var itm in qry)
        {
            DropDownList1.Items.Add(new ListItem(itm.speedRange.ToString(), itm.id.ToString()));
         db.Dispose();
    }