C# ASP GridView和DropDownList
我有一个带有GridView控件的asp页面。网格视图中的一列是dropdownlist。使用页面加载事件上的RowDataBound事件填充下拉列表。但是,选择列表中的一个选项后,将弹出一个对话框,允许用户向列表中添加新项目,并且新添加的项目将成为该下拉列表的选定项目。这部分工作正常,但我希望能够将新项添加到网格中每一行的下拉列表中。在某种程度上,我如何在页面加载后重新绑定所有行中的下拉列表,而不必循环遍历每个字段?如果所有DDL都有一个共享数据源,那么在添加新的listitem后,只需强制回发即可。但是如何添加新的listitem呢 如果弹出窗口只是将新的htmlC# ASP GridView和DropDownList,c#,asp.net,gridview,C#,Asp.net,Gridview,我有一个带有GridView控件的asp页面。网格视图中的一列是dropdownlist。使用页面加载事件上的RowDataBound事件填充下拉列表。但是,选择列表中的一个选项后,将弹出一个对话框,允许用户向列表中添加新项目,并且新添加的项目将成为该下拉列表的选定项目。这部分工作正常,但我希望能够将新项添加到网格中每一行的下拉列表中。在某种程度上,我如何在页面加载后重新绑定所有行中的下拉列表,而不必循环遍历每个字段?如果所有DDL都有一个共享数据源,那么在添加新的listitem后,只需强制回
标记添加到html
标记,那么这与更新DDL数据源不同
要让所有DDL显示新的listitem,您的弹出窗口必须执行回发以更新DDL数据源,并且GridView中的所有DDL控件都需要重新启动
这将在回发时自动发生,假设DDL控件通过DataSourceID属性连接到其数据源。如果您正在使用数据源
属性,那么您必须为每个DDL控件显式调用数据绑定()
,我想您说过您是在GridView行数据绑定
事件中这样做的
或者,您可以在客户端循环使用所有ddl控件,并向每个控件添加相同的项,但在下次刷新页面时,您将丢失所有这些更改,我认为这不是您想要的。所有下拉列表都是从一个公共共享数据源填充的吗?谢谢。我能够将新值添加到共享数据源中,所有列表都会在回发时更新。要将该新值设置为添加该值的特定下拉列表的选定值,我必须将该值保留在一个隐藏字段中,然后可以在回发和数据绑定()之后访问该值。