我想使用ListBox控件的选定值来填充文本框的Text属性和HiddenField及其值属性。这听起来很简单,我这个去:C# - 使用列表框填充其他字段
currentGroupTextBox.Text = currentSiteGroupList.SelectedItem.Text;
currentGroupHiddenField.Value = currentSiteGroupList.SelectedValue;
但在执行时,ASP.NET会返回一个错误:
Object reference not set to an instance of an object.
和亮点的第一道防线。 currentGroupTextBox和currentGroupHiddenField是在ASPX文件中启用的两个控件,所以我不太确定为什么ASP.NET会抱怨实例化它们。
就是这样。该列表在每个Page_Load中“重新加载”。什么是最优雅的方式?当页面显示时,我仍然需要加载页面,但是我需要确保SelectedItem不会同时被“重置”。 – Astaar 2009-10-30 14:51:33
假设视图状态处于活动状态,则不必在每次回发时加载列表框。所有你需要做的就是在你的列表框加载代码之前加上if(!Page.IsPostPack)。 (实际上,将所有Page_Load代码放入回发检查中是一种很好的做法。 – 2009-10-30 15:05:10