c# - 在页面加载时从 .aspx 中删除下拉项

标签 c# asp.net

i具有以下代码,该代码在选择下拉1中的值时从下拉down2中选择的项目:

protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
    {
        DropDownList2.Items.Remove(DropDownList1.SelectedItem);

    }

效果很好。但是,我尝试在页面加载时添加相同的代码,但它并没有删除我猜测的值,因为没有选择任何内容,我该如何完成此操作?

 protected void Page_Load(object sender, EventArgs e)
    {

        DropDownList2.Items.Remove(DropDownList1.SelectedItem);
    }

这是行不通的,有什么想法吗?

最佳答案

你试过吗?

if(!IsPostback)
{
    DropDownList2.Items.Remove(DropDownList1.SelectedItem);
}

在您的 Page_Load 事件中?另外,你是如何绑定(bind)数据的?为什么不在适当的 DropdowsList 而不是 Page_LoadSelected_IndexChanged 上执行此操作?在我看来,这就是这段代码所属的地方。

关于c# - 在页面加载时从 .aspx 中删除下拉项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10435827/

相关文章:

c# - 如何在C#中使用多语言

c# - 在 finally block 上使用未分配的局部变量

c# - ServiceStack RequiredPermission 未验证我的用户

c# - 如何将元素反序列化为 XmlNode?

c# - ASP.Net 中的 GridView RowDeleting 事件导致的问题

asp.net - 在 ASP MVC3 中,如何使用 uri 执行 Controller 和 Action ?

c# - 在 Code First 的情况下使用 MetadataType 强制执行验证是否有意义?

c# - 如何最好地在 Web api 和客户端之间显示格式化属性

c# - LINQ to SQL 在 DataContext Dispose 之后使用查询

c# - 在 JavaScript 中使用服务器端资源