【问题标题】:Dropdownlist disappear when put it in EditItemTemplate放入 EditItemTemplate 时下拉列表消失
【发布时间】:2013-12-12 08:32:05
【问题描述】:

如果我将下拉列表列放在 ItemTemplate 中,它会出现,但我无法更改值。当我像这样把它放在 EditItemTemplate 中时:

<EditItemTemplate>
     <asp:DropDownList DataValueField="COLUMN_NAME" DataTextField="COLUMN_NAME" DataSource='<%#GetDataSourceDesCol()%>' Width="90%" Visible=true ID="ddlDesCol" runat="server">
     </asp:DropDownList>
</EditItemTemplate>

然后我的 ddl 不再显示了。如何解决?

p/s:即使我尝试了一个新项目和简单的代码,例如:

<asp:GridView ID="GridView1" AutoGenerateColumns=false runat="server">
     <Columns>
          <asp:TemplateField>
               <EditItemTemplate>
                     <asp:DropDownList ID="DropDownList1" runat="server">
                     </asp:DropDownList>
               </EditItemTemplate>
          </asp:TemplateField>
      </Columns>
</asp:GridView>

ddl 也没有显示!

【问题讨论】:

  • @user.需要更多代码来分析问题..能否请您显示用于获取数据到下拉列表的代码
  • 即使有一个新项目并且里面没有代码,ddl 也没有显示出来
  • @user2500561 你想通过这个下拉菜单实现什么。

标签: asp.net drop-down-menu edititemtemplate


【解决方案1】:

只有当网格视图处于编辑模式时,编辑项模板内的所有控件才可见。

因此,您需要将网格设置为编辑模式。为了使您的代码正常工作。

希望这会有所帮助..

如果您想将整个网格视图置于编辑模式:

protected void btnEdit_Click(object sender, EventArgs e)
    {
        GridView1.EditIndex = 1;
    }

如果您希望特定行处于编辑模式

只需实现 Row_Editing 事件并执行以下操作:

protected void Row_Editing(object sender, GridViewEditArgs e) 
{
  myGridView.EditItemIndex = e.EditItemIndex; 
  BindData(); 
}

绑定数据将使用数据填充 GridView。

【讨论】:

    猜你喜欢
    • 2012-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多