.net中 用dropdownlist 绑定数据源后让其自动回发刷新页面 显示其他内容 但有时显示的出来 有时现实不出来

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了.net中 用dropdownlist 绑定数据源后让其自动回发刷新页面 显示其他内容 但有时显示的出来 有时现实不出来相关的知识,希望对你有一定的参考价值。

.net中 用dropdownlist 绑定数据源后让其自动回发刷新页面 显示其他内容 但有时显示的出来 有时显示不出来
设完之后 是有时能刷新出来 有时刷新不出来

把dropdownlist 的AutoPostBack属性设为true 参考技术A 要是加载的话,
if(!IsPostBack)
// 绑定 ddl控件
参考技术B AutoPostBack的属性设置错了 参考技术C AutoPostBack

如何绑定 DropDownList 的选定值

【中文标题】如何绑定 DropDownList 的选定值【英文标题】:How to bind the selected value of a DropDownList 【发布时间】:2010-10-10 21:22:36 【问题描述】:

数据绑定都是关于声明性代码的,对吧?所以我用属性指定我想要的东西,其余的由框架处理。除非我弄错了,数据绑定与 S&M 有关,对吧?

那么,为什么 DropDownList 控件只为其数据源(即列表源)提供绑定字段,而不为其实际数据字段提供绑定字段。即如何将我的名字 DropDownList 的选定值绑定到我的 Person 记录中的 Name 字段?这是微软的严重疏忽,还是我的疏忽?

如果我仍然需要手动设置和读取选定的值,那么双向数据绑定有什么意义?

【问题讨论】:

【参考方案1】:

我不知道它是否真的对您有帮助,但是您是否尝试在 Code behind 上设置“SelectedValue”?

例子:

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    DropDownInfoSource.SelectedValue = "1" ' your value, here
End Sub

【讨论】:

最终选择的值将被选择一个或另一个选择改变......所以每次加载时都需要改变它的实际值,而不是初始值.....【参考方案2】:

您可能想要执行以下代码。 您不能以声明方式设置“SelectedValue”,而是通过说 "SelectedValue= 您实际上是在控件绑定数据时设置值。

<asp:DropDownList
                ID="DropDownInfoSource"
                runat="server"
                DataSourceID="_employeeDataSource"
                DataTextField="EmployeeName"
                DataValueField="EmployeeID"
                SelectedValue='<%# Bind("EmployeeID") %>'
                />

【讨论】:

谢谢,我有点跑题了:我只是在 Intellisense 中查找了一个 Value 属性,但没有显示,所以我没有进一步看就问了。我们在 cmets 中需要一个尴尬的表情。 我在 .NET 4 中收到一条错误消息:“必须将对 Bind 的调用分配给模板内控件的属性”,即使该控件位于 GridView 的 ItemTemplate 中。将 Bind 更改为 Eval 对我有用。 @Andrew - 我的在编辑模板字段中,我使用的是 asp.NET 4.0。我尝试使用 EVAL 而不是 Bind,但它仍然不起作用。有什么想法吗? 这个想法是不要把双引号中的Bind表达式“”放在单引号中'' @AndrewShepherd:很抱歉把这个从时间深处拖了回来,但你知道是否有任何具体原因导致该设置没有出现在智能感知中吗?【参考方案3】:

您可以在其中定义数据源、数据文本字段(列表中显示的内容)和数据值字段。

示例(我有一个包含“EmployeeID”列和“EmployeeName”列的数据表):

dropdownlist1.datasource = DT
dropdownlist1.datatextfield = "EmployeeName"
dropdownlist1.datavaluefield = "EmployeeID"
dropdownlist1.databind()

【讨论】:

如果您阅读我的问题,您会发现我知道这些。正如我所问的,我想知道如何将选定的值绑定到另一个数据源。 你知道没关系。如果您的问题应该对其他人有益,也许它应该包括各种解决方案。

以上是关于.net中 用dropdownlist 绑定数据源后让其自动回发刷新页面 显示其他内容 但有时显示的出来 有时现实不出来的主要内容,如果未能解决你的问题,请参考以下文章

asp.net中用datatable给dropdownlist绑定数据

asp.net怎样把数据库中字段的值绑定到dropdownlist上,

来自Web服务的DropDownList绑定在asp.net中编辑时不传递数据源

将 ListItem 的 ASP.NET 列表数据绑定到 DropDownList 问题

用ASP.NET怎样动态给dropdownlist控件赋值

用 jQuery 设置 ASP.NET 数据绑定下拉列表的值