c# - 下拉列表选择的项目文本总是返回第一个项目文本

标签 c# asp.net drop-down-menu

我正在使用此代码从数据库中填充下拉列表。

public void fillcountry()
{
    BL obj = new BL();
    DataSet ds = obj.dss("select * from Country  ");
    drplistcountry.DataSource = ds;
    drplistcountry.DataTextField = "CountryName";
    drplistcountry.DataValueField = "CountryId";
    drplistcountry.DataBind();
    drplistcountry.Items.Insert(0, new ListItem("--Select--", "0"));
}

我在页面 load() 事件中使用这个 fillcountry()。 并在 Button Click 事件上重新设置 selecteditm.text

drplistcountry 总是显示第一个索引文本,如何解决?

最佳答案

在 .aspx 页面中:

<%@ Page Title="Home Page" Language="C#" AutoEventWireup="true"
CodeBehind="Default.aspx.cs" Inherits="WebApplication4._Default" 
EnableViewState="true" %>

对于下拉列表控件 将 EnableViewState 属性设置为 true。

在 .aspx.cs 页面中:

在 PageLoad 事件中检查以下内容:

if(!IsPostBack)
{ 
    fillcountry();
}

关于c# - 下拉列表选择的项目文本总是返回第一个项目文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23052739/

相关文章:

C# 在特定情况下使用小数位格式化百分比

c# - 在 Windows Phone 中以编程方式添加 XAML

c# - 为页面ClientScript中的Registered Hidden Field赋值

javascript - 使用 Bluefieldscom intl-tel-input,如何使标志下拉菜单不与其他输入重叠?

javascript - 如何使用 React Material UI 提取下拉菜单中的点击值?

css - 下拉菜单悬停问题

c# - 在 C# 中,如何使用 `TryAsync` 的实例?

javascript - 如何使用 jquery 从 webgrid 的选定行获取值

c# - ASP.NET - 在 UpdatePanel 内的 ListView 内使用 LinkBut​​ton 触发异步回发

c# - 具有分层组织角色的应用程序角色