Dovberman
asked on
Control reference lost.
lstEvalItemName is a ListBox.
Code behind:
HResult=-2147467261
Message=Object reference not set to an instance of an object.
Source=StockProNew
StackTrace:
at StockProNew.Default1.FillE valItemNam eList() in c:\Users\Dovberman\Documen ts\Visual Studio 2012\Projects\StockProNew\ StockProNe w\Default1 .aspx.cs:l ine 298
at StockProNew.Default1.Page_ Load(Objec t sender, EventArgs e) in c:\Users\Dovberman\Documen ts\Visual Studio 2012\Projects\StockProNew\ StockProNe w\Default1 .aspx.cs:l ine 158
at System.Web.Util.CalliEvent HandlerDel egateProxy .Callback( Object sender, EventArgs e)
at System.Web.UI.Control.OnLo ad(EventAr gs e)
at System.Web.UI.Control.Load Recursive( )
at System.Web.UI.Page.Process RequestMai n(Boolean includeStagesBeforeAsyncPo int, Boolean includeStagesAfterAsyncPoi nt)
InnerException:
I changed it to:
Thanks,
Code behind:
lstEvalItemName = FindControl("lstEvalItemName") as ListBox;
private void FillEvalItemNameList()
{
lstEvalItemName.Items.Clear();
Runtime error:HResult=-2147467261
Message=Object reference not set to an instance of an object.
Source=StockProNew
StackTrace:
at StockProNew.Default1.FillE
at StockProNew.Default1.Page_
at System.Web.Util.CalliEvent
at System.Web.UI.Control.OnLo
at System.Web.UI.Control.Load
at System.Web.UI.Page.Process
InnerException:
I changed it to:
ListBox lstEvalItemName = new ListBox();
lstEvalItemName.Items.Clear();
Why was this necessary?Thanks,
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
It's my mistake. I should have created a new project by selecting the Webform instead of the empty website project type.
ASKER
However the listbox does not get populated.
private void FillEvalItemNameList()
{
lstEvalItemName = FindControl("lstEvalItemNa
lstEvalItemName.Items.Clea
string selectSQL = "SELECT EvalItemID, EvalItemName FROM EvalItems WHERE isActive = 1 ORDER BY EvalItemName";
string strConnection = connString.ToString();
SqlConnection conStockSelect = new SqlConnection(strConnectio
// Try to open the connection.
conStockSelect.Open();
SqlCommand cmd = new SqlCommand(selectSQL, conStockSelect);
lstEvalItemName.DataSource
lstEvalItemName.DataTextFi
lstEvalItemName.DataValueF
lstEvalItemName.DataBind()
conStockSelect.Close();
cmd.Dispose();
}
The connection opens.
The string selectSQL returns 9 rows in the SQL Server query as expected.