Wrox Home  
Search P2P Archive for: Go

  Return to Index  

aspx_beginners thread: DataGrid problem


Message #1 by timofey@e... on Sun, 12 Jan 2003 08:38:15
Hi everyone:

I am new to ASP.NET please bear with me.

I have WebForm and DataGrid control with Load button. The code as follows:

Public Class DataWebForm1
    Inherits System.Web.UI.Page
    Protected WithEvents OleDbSelectCommand1 As 
System.Data.OleDb.OleDbCommand
    Protected WithEvents OleDbInsertCommand1 As 
System.Data.OleDb.OleDbCommand
    Protected WithEvents objdsCustomers As Introduction.dsCustomers
    Protected WithEvents OleDbConnection1 As 
System.Data.OleDb.OleDbConnection
    Protected WithEvents OleDbDataAdapter1 As 
System.Data.OleDb.OleDbDataAdapter
    Protected WithEvents buttonLoad As System.Web.UI.WebControls.Button
    Protected WithEvents masterDataGrid As 
System.Web.UI.WebControls.DataGrid

#Region " Web Form Designer Generated Code "

    'This call is required by the Web Form Designer.
    <System.Diagnostics.DebuggerStepThrough()> Private Sub 
InitializeComponent()
        Me.OleDbSelectCommand1 = New System.Data.OleDb.OleDbCommand()
        Me.OleDbConnection1 = New System.Data.OleDb.OleDbConnection()
        Me.OleDbInsertCommand1 = New System.Data.OleDb.OleDbCommand()
        '
        'OleDbSelectCommand1
        '
        Me.OleDbSelectCommand1.CommandText = "SELECT CustomerID, 
CompanyName, ContactName, ContactTitle, Address, City, Region," & _
        " PostalCode, Country, Phone, Fax FROM Customers"
        Me.OleDbSelectCommand1.Connection = Me.OleDbConnection1
        '
        'OleDbConnection1
        '
        Me.OleDbConnection1.ConnectionString 
= "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security 
Info=False;Initial " & _
        "Catalog=Northwind;Data Source=SERVER-KMSX8EHG\NETSDK;Use 
Procedure for Prepare=1" & _
        ";Auto Translate=True;Packet Size=4096;Workstation ID=SERVER-
KMSX8EHG;Use Encrypt" & _
        "ion for Data=False;Tag with column collation when possible=False"
        '
        'OleDbInsertCommand1
        '
        Me.OleDbInsertCommand1.CommandText = "INSERT INTO Customers
(CustomerID, CompanyName, ContactName, ContactTitle, Address" & _
        ", City, Region, PostalCode, Country, Phone, Fax) VALUES 
(?, ?, ?, ?, ?, ?, ?, ?," & _
        " ?, ?, ?); SELECT CustomerID, CompanyName, ContactName, 
ContactTitle, Address, C" & _
        "ity, Region, PostalCode, Country, Phone, Fax FROM Customers"
        Me.OleDbInsertCommand1.Connection = Me.OleDbConnection1
        Me.OleDbInsertCommand1.Parameters.Add(New 
System.Data.OleDb.OleDbParameter("CustomerID", 
System.Data.OleDb.OleDbType.VarWChar, 5, "CustomerID"))
        Me.OleDbInsertCommand1.Parameters.Add(New 
System.Data.OleDb.OleDbParameter("CompanyName", 
System.Data.OleDb.OleDbType.VarWChar, 40, "CompanyName"))
        Me.OleDbInsertCommand1.Parameters.Add(New 
System.Data.OleDb.OleDbParameter("ContactName", 
System.Data.OleDb.OleDbType.VarWChar, 30, "ContactName"))
        Me.OleDbInsertCommand1.Parameters.Add(New 
System.Data.OleDb.OleDbParameter("ContactTitle", 
System.Data.OleDb.OleDbType.VarWChar, 30, "ContactTitle"))
        Me.OleDbInsertCommand1.Parameters.Add(New 
System.Data.OleDb.OleDbParameter("Address", 
System.Data.OleDb.OleDbType.VarWChar, 60, "Address"))
        Me.OleDbInsertCommand1.Parameters.Add(New 
System.Data.OleDb.OleDbParameter("City", 
System.Data.OleDb.OleDbType.VarWChar, 15, "City"))
        Me.OleDbInsertCommand1.Parameters.Add(New 
System.Data.OleDb.OleDbParameter("Region", 
System.Data.OleDb.OleDbType.VarWChar, 15, "Region"))
        Me.OleDbInsertCommand1.Parameters.Add(New 
System.Data.OleDb.OleDbParameter("PostalCode", 
System.Data.OleDb.OleDbType.VarWChar, 10, "PostalCode"))
        Me.OleDbInsertCommand1.Parameters.Add(New 
System.Data.OleDb.OleDbParameter("Country", 
System.Data.OleDb.OleDbType.VarWChar, 15, "Country"))
        Me.OleDbInsertCommand1.Parameters.Add(New 
System.Data.OleDb.OleDbParameter("Phone", 
System.Data.OleDb.OleDbType.VarWChar, 24, "Phone"))
        Me.OleDbInsertCommand1.Parameters.Add(New 
System.Data.OleDb.OleDbParameter("Fax", 
System.Data.OleDb.OleDbType.VarWChar, 24, "Fax"))

    End Sub

    Private Sub Page_Init(ByVal sender As System.Object, ByVal e As 
System.EventArgs) Handles MyBase.Init
        'CODEGEN: This method call is required by the Web Form Designer
        'Do not modify it using the code editor.
        InitializeComponent()
    End Sub

#End Region

    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As 
System.EventArgs) Handles MyBase.Load
        'Put user code to initialize the page here
    End Sub

    Private Sub buttonLoad_Click(ByVal sender As System.Object, ByVal e As 
System.EventArgs) Handles buttonLoad.Click
        Try
            Me.LoadDataSet()
            Me.masterDataGrid.SelectedIndex = -1
            Me.masterDataGrid.DataBind()
        Catch eLoad As System.Exception
            Me.Response.Write(eLoad.Message)
        End Try

    End Sub
    Public Sub LoadDataSet()
        'Create a new dataset to hold the records returned from the call 
to FillDataSet.
        'A temporary dataset is used because filling the existing dataset 
would
        'require the databindings to be rebound.
        Dim objDataSetTemp As Introduction.dsCustomers
        objDataSetTemp = New Introduction.dsCustomers()
        Try
            'Attempt to fill the temporary dataset.
            Me.FillDataSet(objDataSetTemp)
        Catch eFillDataSet As System.Exception
            'Add your error handling code here.
            Throw eFillDataSet
        End Try
        Try
            'Empty the old records from the dataset.
            objdsCustomers.Clear()
            'Merge the records into the main dataset.
            objdsCustomers.Merge(objDataSetTemp)
        Catch eLoadMerge As System.Exception
            'Add your error handling code here.
            Throw eLoadMerge
        End Try

    End Sub
    Public Sub FillDataSet(ByVal dataSet As Introduction.dsCustomers)
        'Turn off constraint checking before the dataset is filled.
        'This allows the adapters to fill the dataset without concern
        'for dependencies between the tables.
        dataSet.EnforceConstraints = False
        Try
            'Open the connection.
            Me.OleDbConnection1.Open()
            'Attempt to fill the dataset through the OleDbDataAdapter1.
            Me.OleDbDataAdapter1.Fill(dataSet)
        Catch fillException As System.Exception
            'Add your error handling code here.
            Throw fillException
        Finally
            'Turn constraint checking back on.
            dataSet.EnforceConstraints = True
            'Close the connection whether or not the exception was thrown.
            Me.OleDbConnection1.Close()
        End Try

    End Sub
End Class


After Button_Click event, I am getting the following message:

Object reference not set to an instance of an object. 

What I am missing here.

TIA
Sam
Message #2 by "Jack" <jdunstan7@h...> on Mon, 13 Jan 2003 12:28:08 -0500
Sam,

I don't see in your code snippet where you set the masterDataGrid.source.  That could be the problem.

hth
Jack

  ----- Original Message ----- 
  From: timofey@e... 
  To: aspx_beginners 
  Sent: Sunday, January 12, 2003 8:38 AM
  Subject: [aspx_beginners] DataGrid problem


  Hi everyone:

  I am new to ASP.NET please bear with me.

  I have WebForm and DataGrid control with Load button. The code as follows:

  Public Class DataWebForm1
      Inherits System.Web.UI.Page
      Protected WithEvents OleDbSelectCommand1 As 
  System.Data.OleDb.OleDbCommand
      Protected WithEvents OleDbInsertCommand1 As 
  System.Data.OleDb.OleDbCommand
      Protected WithEvents objdsCustomers As Introduction.dsCustomers
      Protected WithEvents OleDbConnection1 As 
  System.Data.OleDb.OleDbConnection
      Protected WithEvents OleDbDataAdapter1 As 
  System.Data.OleDb.OleDbDataAdapter
      Protected WithEvents buttonLoad As System.Web.UI.WebControls.Button
      Protected WithEvents masterDataGrid As 
  System.Web.UI.WebControls.DataGrid

  #Region " Web Form Designer Generated Code "

      'This call is required by the Web Form Designer.
      <System.Diagnostics.DebuggerStepThrough()> Private Sub 
  InitializeComponent()
          Me.OleDbSelectCommand1 = New System.Data.OleDb.OleDbCommand()
          Me.OleDbConnection1 = New System.Data.OleDb.OleDbConnection()
          Me.OleDbInsertCommand1 = New System.Data.OleDb.OleDbCommand()
          '
          'OleDbSelectCommand1
          '
          Me.OleDbSelectCommand1.CommandText = "SELECT CustomerID, 
  CompanyName, ContactName, ContactTitle, Address, City, Region," & _
          " PostalCode, Country, Phone, Fax FROM Customers"
          Me.OleDbSelectCommand1.Connection = Me.OleDbConnection1
          '
          'OleDbConnection1
          '
          Me.OleDbConnection1.ConnectionString 
  = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security 
  Info=False;Initial " & _
          "Catalog=Northwind;Data Source=SERVER-KMSX8EHG\NETSDK;Use 
  Procedure for Prepare=1" & _
          ";Auto Translate=True;Packet Size=4096;Workstation ID=SERVER-
  KMSX8EHG;Use Encrypt" & _
          "ion for Data=False;Tag with column collation when possible=False"
          '
          'OleDbInsertCommand1
          '
          Me.OleDbInsertCommand1.CommandText = "INSERT INTO Customers
  (CustomerID, CompanyName, ContactName, ContactTitle, Address" & _
          ", City, Region, PostalCode, Country, Phone, Fax) VALUES 
  (?, ?, ?, ?, ?, ?, ?, ?," & _
          " ?, ?, ?); SELECT CustomerID, CompanyName, ContactName, 
  ContactTitle, Address, C" & _
          "ity, Region, PostalCode, Country, Phone, Fax FROM Customers"
          Me.OleDbInsertCommand1.Connection = Me.OleDbConnection1
          Me.OleDbInsertCommand1.Parameters.Add(New 
  System.Data.OleDb.OleDbParameter("CustomerID", 
  System.Data.OleDb.OleDbType.VarWChar, 5, "CustomerID"))
          Me.OleDbInsertCommand1.Parameters.Add(New 
  System.Data.OleDb.OleDbParameter("CompanyName", 
  System.Data.OleDb.OleDbType.VarWChar, 40, "CompanyName"))
          Me.OleDbInsertCommand1.Parameters.Add(New 
  System.Data.OleDb.OleDbParameter("ContactName", 
  System.Data.OleDb.OleDbType.VarWChar, 30, "ContactName"))
          Me.OleDbInsertCommand1.Parameters.Add(New 
  System.Data.OleDb.OleDbParameter("ContactTitle", 
  System.Data.OleDb.OleDbType.VarWChar, 30, "ContactTitle"))
          Me.OleDbInsertCommand1.Parameters.Add(New 
  System.Data.OleDb.OleDbParameter("Address", 
  System.Data.OleDb.OleDbType.VarWChar, 60, "Address"))
          Me.OleDbInsertCommand1.Parameters.Add(New 
  System.Data.OleDb.OleDbParameter("City", 
  System.Data.OleDb.OleDbType.VarWChar, 15, "City"))
          Me.OleDbInsertCommand1.Parameters.Add(New 
  System.Data.OleDb.OleDbParameter("Region", 
  System.Data.OleDb.OleDbType.VarWChar, 15, "Region"))
          Me.OleDbInsertCommand1.Parameters.Add(New 
  System.Data.OleDb.OleDbParameter("PostalCode", 
  System.Data.OleDb.OleDbType.VarWChar, 10, "PostalCode"))
          Me.OleDbInsertCommand1.Parameters.Add(New 
  System.Data.OleDb.OleDbParameter("Country", 
  System.Data.OleDb.OleDbType.VarWChar, 15, "Country"))
          Me.OleDbInsertCommand1.Parameters.Add(New 
  System.Data.OleDb.OleDbParameter("Phone", 
  System.Data.OleDb.OleDbType.VarWChar, 24, "Phone"))
          Me.OleDbInsertCommand1.Parameters.Add(New 
  System.Data.OleDb.OleDbParameter("Fax", 
  System.Data.OleDb.OleDbType.VarWChar, 24, "Fax"))

      End Sub

      Private Sub Page_Init(ByVal sender As System.Object, ByVal e As 
  System.EventArgs) Handles MyBase.Init
          'CODEGEN: This method call is required by the Web Form Designer
          'Do not modify it using the code editor.
          InitializeComponent()
      End Sub

  #End Region

      Private Sub Page_Load(ByVal sender As System.Object, ByVal e As 
  System.EventArgs) Handles MyBase.Load
          'Put user code to initialize the page here
      End Sub

      Private Sub buttonLoad_Click(ByVal sender As System.Object, ByVal e As 
  System.EventArgs) Handles buttonLoad.Click
          Try
              Me.LoadDataSet()
              Me.masterDataGrid.SelectedIndex = -1
              Me.masterDataGrid.DataBind()
          Catch eLoad As System.Exception
              Me.Response.Write(eLoad.Message)
          End Try

      End Sub
      Public Sub LoadDataSet()
          'Create a new dataset to hold the records returned from the call 
  to FillDataSet.
          'A temporary dataset is used because filling the existing dataset 
  would
          'require the databindings to be rebound.
          Dim objDataSetTemp As Introduction.dsCustomers
          objDataSetTemp = New Introduction.dsCustomers()
          Try
              'Attempt to fill the temporary dataset.
              Me.FillDataSet(objDataSetTemp)
          Catch eFillDataSet As System.Exception
              'Add your error handling code here.
              Throw eFillDataSet
          End Try
          Try
              'Empty the old records from the dataset.
              objdsCustomers.Clear()
              'Merge the records into the main dataset.
              objdsCustomers.Merge(objDataSetTemp)
          Catch eLoadMerge As System.Exception
              'Add your error handling code here.
              Throw eLoadMerge
          End Try

      End Sub
      Public Sub FillDataSet(ByVal dataSet As Introduction.dsCustomers)
          'Turn off constraint checking before the dataset is filled.
          'This allows the adapters to fill the dataset without concern
          'for dependencies between the tables.
          dataSet.EnforceConstraints = False
          Try
              'Open the connection.
              Me.OleDbConnection1.Open()
              'Attempt to fill the dataset through the OleDbDataAdapter1.
              Me.OleDbDataAdapter1.Fill(dataSet)
          Catch fillException As System.Exception
              'Add your error handling code here.
              Throw fillException
          Finally
              'Turn constraint checking back on.
              dataSet.EnforceConstraints = True
              'Close the connection whether or not the exception was thrown.
              Me.OleDbConnection1.Close()
          End Try

      End Sub
  End Class


  After Button_Click event, I am getting the following message:

  Object reference not set to an instance of an object. 

  What I am missing here.

  TIA
  Sam

Message #3 by "Pacific" <timofey@e...> on Mon, 13 Jan 2003 21:44:59 -0800
Hi Jack:

That's exactly what I was trying to figure out how to do it. Should it be
hard coded or it can be done the other way. In my masterDataGrid Property I
have only one avalable choise Data Source: (unbound). Please guide me how it
should be done. I don't have any ASP.NET books with me. Only internet for
reference.

TIA
Sam
----- Original Message -----
From: "Jack" <jdunstan7@h...>
To: "aspx_beginners" <aspx_beginners@p...>
Sent: Monday, January 13, 2003 9:28 AM
Subject: [aspx_beginners] Re: DataGrid problem


> Sam,
>
> I don't see in your code snippet where you set the masterDataGrid.source.
That could be the problem.
>
> hth
> Jack
>
>   ----- Original Message -----
>   From: timofey@e...
>   To: aspx_beginners
>   Sent: Sunday, January 12, 2003 8:38 AM
>   Subject: [aspx_beginners] DataGrid problem
>
>
>   Hi everyone:
>
>   I am new to ASP.NET please bear with me.
>
>   I have WebForm and DataGrid control with Load button. The code as
follows:
>
>   Public Class DataWebForm1
>       Inherits System.Web.UI.Page
>       Protected WithEvents OleDbSelectCommand1 As
>   System.Data.OleDb.OleDbCommand
>       Protected WithEvents OleDbInsertCommand1 As
>   System.Data.OleDb.OleDbCommand
>       Protected WithEvents objdsCustomers As Introduction.dsCustomers
>       Protected WithEvents OleDbConnection1 As
>   System.Data.OleDb.OleDbConnection
>       Protected WithEvents OleDbDataAdapter1 As
>   System.Data.OleDb.OleDbDataAdapter
>       Protected WithEvents buttonLoad As System.Web.UI.WebControls.Button
>       Protected WithEvents masterDataGrid As
>   System.Web.UI.WebControls.DataGrid
>
>   #Region " Web Form Designer Generated Code "
>
>       'This call is required by the Web Form Designer.
>       <System.Diagnostics.DebuggerStepThrough()> Private Sub
>   InitializeComponent()
>           Me.OleDbSelectCommand1 = New System.Data.OleDb.OleDbCommand()
>           Me.OleDbConnection1 = New System.Data.OleDb.OleDbConnection()
>           Me.OleDbInsertCommand1 = New System.Data.OleDb.OleDbCommand()
>           '
>           'OleDbSelectCommand1
>           '
>           Me.OleDbSelectCommand1.CommandText = "SELECT CustomerID,
>   CompanyName, ContactName, ContactTitle, Address, City, Region," & _
>           " PostalCode, Country, Phone, Fax FROM Customers"
>           Me.OleDbSelectCommand1.Connection = Me.OleDbConnection1
>           '
>           'OleDbConnection1
>           '
>           Me.OleDbConnection1.ConnectionString
>   = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security
>   Info=False;Initial " & _
>           "Catalog=Northwind;Data Source=SERVER-KMSX8EHG\NETSDK;Use
>   Procedure for Prepare=1" & _
>           ";Auto Translate=True;Packet Size=4096;Workstation ID=SERVER-
>   KMSX8EHG;Use Encrypt" & _
>           "ion for Data=False;Tag with column collation when
possible=False"
>           '
>           'OleDbInsertCommand1
>           '
>           Me.OleDbInsertCommand1.CommandText = "INSERT INTO Customers
>   (CustomerID, CompanyName, ContactName, ContactTitle, Address" & _
>           ", City, Region, PostalCode, Country, Phone, Fax) VALUES
>   (?, ?, ?, ?, ?, ?, ?, ?," & _
>           " ?, ?, ?); SELECT CustomerID, CompanyName, ContactName,
>   ContactTitle, Address, C" & _
>           "ity, Region, PostalCode, Country, Phone, Fax FROM Customers"
>           Me.OleDbInsertCommand1.Connection = Me.OleDbConnection1
>           Me.OleDbInsertCommand1.Parameters.Add(New
>   System.Data.OleDb.OleDbParameter("CustomerID",
>   System.Data.OleDb.OleDbType.VarWChar, 5, "CustomerID"))
>           Me.OleDbInsertCommand1.Parameters.Add(New
>   System.Data.OleDb.OleDbParameter("CompanyName",
>   System.Data.OleDb.OleDbType.VarWChar, 40, "CompanyName"))
>           Me.OleDbInsertCommand1.Parameters.Add(New
>   System.Data.OleDb.OleDbParameter("ContactName",
>   System.Data.OleDb.OleDbType.VarWChar, 30, "ContactName"))
>           Me.OleDbInsertCommand1.Parameters.Add(New
>   System.Data.OleDb.OleDbParameter("ContactTitle",
>   System.Data.OleDb.OleDbType.VarWChar, 30, "ContactTitle"))
>           Me.OleDbInsertCommand1.Parameters.Add(New
>   System.Data.OleDb.OleDbParameter("Address",
>   System.Data.OleDb.OleDbType.VarWChar, 60, "Address"))
>           Me.OleDbInsertCommand1.Parameters.Add(New
>   System.Data.OleDb.OleDbParameter("City",
>   System.Data.OleDb.OleDbType.VarWChar, 15, "City"))
>           Me.OleDbInsertCommand1.Parameters.Add(New
>   System.Data.OleDb.OleDbParameter("Region",
>   System.Data.OleDb.OleDbType.VarWChar, 15, "Region"))
>           Me.OleDbInsertCommand1.Parameters.Add(New
>   System.Data.OleDb.OleDbParameter("PostalCode",
>   System.Data.OleDb.OleDbType.VarWChar, 10, "PostalCode"))
>           Me.OleDbInsertCommand1.Parameters.Add(New
>   System.Data.OleDb.OleDbParameter("Country",
>   System.Data.OleDb.OleDbType.VarWChar, 15, "Country"))
>           Me.OleDbInsertCommand1.Parameters.Add(New
>   System.Data.OleDb.OleDbParameter("Phone",
>   System.Data.OleDb.OleDbType.VarWChar, 24, "Phone"))
>           Me.OleDbInsertCommand1.Parameters.Add(New
>   System.Data.OleDb.OleDbParameter("Fax",
>   System.Data.OleDb.OleDbType.VarWChar, 24, "Fax"))
>
>       End Sub
>
>       Private Sub Page_Init(ByVal sender As System.Object, ByVal e As
>   System.EventArgs) Handles MyBase.Init
>           'CODEGEN: This method call is required by the Web Form Designer
>           'Do not modify it using the code editor.
>           InitializeComponent()
>       End Sub
>
>   #End Region
>
>       Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
>   System.EventArgs) Handles MyBase.Load
>           'Put user code to initialize the page here
>       End Sub
>
>       Private Sub buttonLoad_Click(ByVal sender As System.Object, ByVal e
As
>   System.EventArgs) Handles buttonLoad.Click
>           Try
>               Me.LoadDataSet()
>               Me.masterDataGrid.SelectedIndex = -1
>               Me.masterDataGrid.DataBind()
>           Catch eLoad As System.Exception
>               Me.Response.Write(eLoad.Message)
>           End Try
>
>       End Sub
>       Public Sub LoadDataSet()
>           'Create a new dataset to hold the records returned from the call
>   to FillDataSet.
>           'A temporary dataset is used because filling the existing
dataset
>   would
>           'require the databindings to be rebound.
>           Dim objDataSetTemp As Introduction.dsCustomers
>           objDataSetTemp = New Introduction.dsCustomers()
>           Try
>               'Attempt to fill the temporary dataset.
>               Me.FillDataSet(objDataSetTemp)
>           Catch eFillDataSet As System.Exception
>               'Add your error handling code here.
>               Throw eFillDataSet
>           End Try
>           Try
>               'Empty the old records from the dataset.
>               objdsCustomers.Clear()
>               'Merge the records into the main dataset.
>               objdsCustomers.Merge(objDataSetTemp)
>           Catch eLoadMerge As System.Exception
>               'Add your error handling code here.
>               Throw eLoadMerge
>           End Try
>
>       End Sub
>       Public Sub FillDataSet(ByVal dataSet As Introduction.dsCustomers)
>           'Turn off constraint checking before the dataset is filled.
>           'This allows the adapters to fill the dataset without concern
>           'for dependencies between the tables.
>           dataSet.EnforceConstraints = False
>           Try
>               'Open the connection.
>               Me.OleDbConnection1.Open()
>               'Attempt to fill the dataset through the OleDbDataAdapter1.
>               Me.OleDbDataAdapter1.Fill(dataSet)
>           Catch fillException As System.Exception
>               'Add your error handling code here.
>               Throw fillException
>           Finally
>               'Turn constraint checking back on.
>               dataSet.EnforceConstraints = True
>               'Close the connection whether or not the exception was
thrown.
>               Me.OleDbConnection1.Close()
>           End Try
>
>       End Sub
>   End Class
>
>
>   After Button_Click event, I am getting the following message:
>
>   Object reference not set to an instance of an object.
>
>   What I am missing here.
>
>   TIA
>   Sam
>
>

Message #4 by "Jack" <jdunstan7@h...> on Tue, 14 Jan 2003 15:19:24 -0500
Sam,

Without knowing for sure what you may be trying to accomplish, normally you set the datagrid's DataSource to a dataset or a
dataview.
Like so:

 Private Sub buttonLoad_Click(ByVal sender As System.Object, ByVal e
As
   System.EventArgs) Handles buttonLoad.Click
           Try
               Me.LoadDataSet()
               Me.masterDataGrid.SelectedIndex = -1
               Me.masterDataGrid.DataSource = objdsCustomers     '**** here
               Me.masterDataGrid.DataBind()
           Catch eLoad As System.Exception
               Me.Response.Write(eLoad.Message)
           End Try

       End Sub

hth
Jack
  ----- Original Message ----- 
  From: Pacific 
  To: aspx_beginners 
  Sent: Tuesday, January 14, 2003 12:44 AM
  Subject: [aspx_beginners] Re: DataGrid problem


  Hi Jack:

  That's exactly what I was trying to figure out how to do it. Should it be
  hard coded or it can be done the other way. In my masterDataGrid Property I
  have only one avalable choise Data Source: (unbound). Please guide me how it
  should be done. I don't have any ASP.NET books with me. Only internet for
  reference.

  TIA
  Sam
  ----- Original Message -----
  From: "Jack" <jdunstan7@h...>
  To: "aspx_beginners" <aspx_beginners@p...>
  Sent: Monday, January 13, 2003 9:28 AM
  Subject: [aspx_beginners] Re: DataGrid problem


  > Sam,
  >
  > I don't see in your code snippet where you set the masterDataGrid.source.
  That could be the problem.
  >
  > hth
  > Jack
  >
  >   ----- Original Message -----
  >   From: timofey@e...
  >   To: aspx_beginners
  >   Sent: Sunday, January 12, 2003 8:38 AM
  >   Subject: [aspx_beginners] DataGrid problem
  >
  >
  >   Hi everyone:
  >
  >   I am new to ASP.NET please bear with me.
  >
  >   I have WebForm and DataGrid control with Load button. The code as
  follows:
  >
  >   Public Class DataWebForm1
  >       Inherits System.Web.UI.Page
  >       Protected WithEvents OleDbSelectCommand1 As
  >   System.Data.OleDb.OleDbCommand
  >       Protected WithEvents OleDbInsertCommand1 As
  >   System.Data.OleDb.OleDbCommand
  >       Protected WithEvents objdsCustomers As Introduction.dsCustomers
  >       Protected WithEvents OleDbConnection1 As
  >   System.Data.OleDb.OleDbConnection
  >       Protected WithEvents OleDbDataAdapter1 As
  >   System.Data.OleDb.OleDbDataAdapter
  >       Protected WithEvents buttonLoad As System.Web.UI.WebControls.Button
  >       Protected WithEvents masterDataGrid As
  >   System.Web.UI.WebControls.DataGrid
  >
  >   #Region " Web Form Designer Generated Code "
  >
  >       'This call is required by the Web Form Designer.
  >       <System.Diagnostics.DebuggerStepThrough()> Private Sub
  >   InitializeComponent()
  >           Me.OleDbSelectCommand1 = New System.Data.OleDb.OleDbCommand()
  >           Me.OleDbConnection1 = New System.Data.OleDb.OleDbConnection()
  >           Me.OleDbInsertCommand1 = New System.Data.OleDb.OleDbCommand()
  >           '
  >           'OleDbSelectCommand1
  >           '
  >           Me.OleDbSelectCommand1.CommandText = "SELECT CustomerID,
  >   CompanyName, ContactName, ContactTitle, Address, City, Region," & _
  >           " PostalCode, Country, Phone, Fax FROM Customers"
  >           Me.OleDbSelectCommand1.Connection = Me.OleDbConnection1
  >           '
  >           'OleDbConnection1
  >           '
  >           Me.OleDbConnection1.ConnectionString
  >   = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security
  >   Info=False;Initial " & _
  >           "Catalog=Northwind;Data Source=SERVER-KMSX8EHG\NETSDK;Use
  >   Procedure for Prepare=1" & _
  >           ";Auto Translate=True;Packet Size=4096;Workstation ID=SERVER-
  >   KMSX8EHG;Use Encrypt" & _
  >           "ion for Data=False;Tag with column collation when
  possible=False"
  >           '
  >           'OleDbInsertCommand1
  >           '
  >           Me.OleDbInsertCommand1.CommandText = "INSERT INTO Customers
  >   (CustomerID, CompanyName, ContactName, ContactTitle, Address" & _
  >           ", City, Region, PostalCode, Country, Phone, Fax) VALUES
  >   (?, ?, ?, ?, ?, ?, ?, ?," & _
  >           " ?, ?, ?); SELECT CustomerID, CompanyName, ContactName,
  >   ContactTitle, Address, C" & _
  >           "ity, Region, PostalCode, Country, Phone, Fax FROM Customers"
  >           Me.OleDbInsertCommand1.Connection = Me.OleDbConnection1
  >           Me.OleDbInsertCommand1.Parameters.Add(New
  >   System.Data.OleDb.OleDbParameter("CustomerID",
  >   System.Data.OleDb.OleDbType.VarWChar, 5, "CustomerID"))
  >           Me.OleDbInsertCommand1.Parameters.Add(New
  >   System.Data.OleDb.OleDbParameter("CompanyName",
  >   System.Data.OleDb.OleDbType.VarWChar, 40, "CompanyName"))
  >           Me.OleDbInsertCommand1.Parameters.Add(New
  >   System.Data.OleDb.OleDbParameter("ContactName",
  >   System.Data.OleDb.OleDbType.VarWChar, 30, "ContactName"))
  >           Me.OleDbInsertCommand1.Parameters.Add(New
  >   System.Data.OleDb.OleDbParameter("ContactTitle",
  >   System.Data.OleDb.OleDbType.VarWChar, 30, "ContactTitle"))
  >           Me.OleDbInsertCommand1.Parameters.Add(New
  >   System.Data.OleDb.OleDbParameter("Address",
  >   System.Data.OleDb.OleDbType.VarWChar, 60, "Address"))
  >           Me.OleDbInsertCommand1.Parameters.Add(New
  >   System.Data.OleDb.OleDbParameter("City",
  >   System.Data.OleDb.OleDbType.VarWChar, 15, "City"))
  >           Me.OleDbInsertCommand1.Parameters.Add(New
  >   System.Data.OleDb.OleDbParameter("Region",
  >   System.Data.OleDb.OleDbType.VarWChar, 15, "Region"))
  >           Me.OleDbInsertCommand1.Parameters.Add(New
  >   System.Data.OleDb.OleDbParameter("PostalCode",
  >   System.Data.OleDb.OleDbType.VarWChar, 10, "PostalCode"))
  >           Me.OleDbInsertCommand1.Parameters.Add(New
  >   System.Data.OleDb.OleDbParameter("Country",
  >   System.Data.OleDb.OleDbType.VarWChar, 15, "Country"))
  >           Me.OleDbInsertCommand1.Parameters.Add(New
  >   System.Data.OleDb.OleDbParameter("Phone",
  >   System.Data.OleDb.OleDbType.VarWChar, 24, "Phone"))
  >           Me.OleDbInsertCommand1.Parameters.Add(New
  >   System.Data.OleDb.OleDbParameter("Fax",
  >   System.Data.OleDb.OleDbType.VarWChar, 24, "Fax"))
  >
  >       End Sub
  >
  >       Private Sub Page_Init(ByVal sender As System.Object, ByVal e As
  >   System.EventArgs) Handles MyBase.Init
  >           'CODEGEN: This method call is required by the Web Form Designer
  >           'Do not modify it using the code editor.
  >           InitializeComponent()
  >       End Sub
  >
  >   #End Region
  >
  >       Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
  >   System.EventArgs) Handles MyBase.Load
  >           'Put user code to initialize the page here
  >       End Sub
  >
  >       Private Sub buttonLoad_Click(ByVal sender As System.Object, ByVal e
  As
  >   System.EventArgs) Handles buttonLoad.Click
  >           Try
  >               Me.LoadDataSet()
  >               Me.masterDataGrid.SelectedIndex = -1
  >               Me.masterDataGrid.DataBind()
  >           Catch eLoad As System.Exception
  >               Me.Response.Write(eLoad.Message)
  >           End Try
  >
  >       End Sub
  >       Public Sub LoadDataSet()
  >           'Create a new dataset to hold the records returned from the call
  >   to FillDataSet.
  >           'A temporary dataset is used because filling the existing
  dataset
  >   would
  >           'require the databindings to be rebound.
  >           Dim objDataSetTemp As Introduction.dsCustomers
  >           objDataSetTemp = New Introduction.dsCustomers()
  >           Try
  >               'Attempt to fill the temporary dataset.
  >               Me.FillDataSet(objDataSetTemp)
  >           Catch eFillDataSet As System.Exception
  >               'Add your error handling code here.
  >               Throw eFillDataSet
  >           End Try
  >           Try
  >               'Empty the old records from the dataset.
  >               objdsCustomers.Clear()
  >               'Merge the records into the main dataset.
  >               objdsCustomers.Merge(objDataSetTemp)
  >           Catch eLoadMerge As System.Exception
  >               'Add your error handling code here.
  >               Throw eLoadMerge
  >           End Try
  >
  >       End Sub
  >       Public Sub FillDataSet(ByVal dataSet As Introduction.dsCustomers)
  >           'Turn off constraint checking before the dataset is filled.
  >           'This allows the adapters to fill the dataset without concern
  >           'for dependencies between the tables.
  >           dataSet.EnforceConstraints = False
  >           Try
  >               'Open the connection.
  >               Me.OleDbConnection1.Open()
  >               'Attempt to fill the dataset through the OleDbDataAdapter1.
  >               Me.OleDbDataAdapter1.Fill(dataSet)
  >           Catch fillException As System.Exception
  >               'Add your error handling code here.
  >               Throw fillException
  >           Finally
  >               'Turn constraint checking back on.
  >               dataSet.EnforceConstraints = True
  >               'Close the connection whether or not the exception was
  thrown.
  >               Me.OleDbConnection1.Close()
  >           End Try
  >
  >       End Sub
  >   End Class
  >
  >
  >   After Button_Click event, I am getting the following message:
  >
  >   Object reference not set to an instance of an object.
  >
  >   What I am missing here.
  >
  >   TIA
  >   Sam
  >
  >



Message #5 by "Pacific" <timofey@e...> on Tue, 14 Jan 2003 22:43:58 -0800
Hi Jack:

Thank you for your post. Let me look at it.

HTH
Sam
----- Original Message -----
From: "Jack" <jdunstan7@h...>
To: "aspx_beginners" <aspx_beginners@p...>
Sent: Tuesday, January 14, 2003 12:19 PM
Subject: [aspx_beginners] Re: DataGrid problem


> Sam,
>
> Without knowing for sure what you may be trying to accomplish, normally
you set the datagrid's DataSource to a dataset or a dataview.
> Like so:
>
>  Private Sub buttonLoad_Click(ByVal sender As System.Object, ByVal e
> As
>    System.EventArgs) Handles buttonLoad.Click
>            Try
>                Me.LoadDataSet()
>                Me.masterDataGrid.SelectedIndex = -1
>                Me.masterDataGrid.DataSource = objdsCustomers     '****
here
>                Me.masterDataGrid.DataBind()
>            Catch eLoad As System.Exception
>                Me.Response.Write(eLoad.Message)
>            End Try
>
>        End Sub
>
> hth
> Jack
>   ----- Original Message -----
>   From: Pacific
>   To: aspx_beginners
>   Sent: Tuesday, January 14, 2003 12:44 AM
>   Subject: [aspx_beginners] Re: DataGrid problem
>
>
>   Hi Jack:
>
>   That's exactly what I was trying to figure out how to do it. Should it
be
>   hard coded or it can be done the other way. In my masterDataGrid
Property I
>   have only one avalable choise Data Source: (unbound). Please guide me
how it
>   should be done. I don't have any ASP.NET books with me. Only internet
for
>   reference.
>
>   TIA
>   Sam
>   ----- Original Message -----
>   From: "Jack" <jdunstan7@h...>
>   To: "aspx_beginners" <aspx_beginners@p...>
>   Sent: Monday, January 13, 2003 9:28 AM
>   Subject: [aspx_beginners] Re: DataGrid problem
>
>
>   > Sam,
>   >
>   > I don't see in your code snippet where you set the
masterDataGrid.source.
>   That could be the problem.
>   >
>   > hth
>   > Jack
>   >
>   >   ----- Original Message -----
>   >   From: timofey@e...
>   >   To: aspx_beginners
>   >   Sent: Sunday, January 12, 2003 8:38 AM
>   >   Subject: [aspx_beginners] DataGrid problem
>   >
>   >
>   >   Hi everyone:
>   >
>   >   I am new to ASP.NET please bear with me.
>   >
>   >   I have WebForm and DataGrid control with Load button. The code as
>   follows:
>   >
>   >   Public Class DataWebForm1
>   >       Inherits System.Web.UI.Page
>   >       Protected WithEvents OleDbSelectCommand1 As
>   >   System.Data.OleDb.OleDbCommand
>   >       Protected WithEvents OleDbInsertCommand1 As
>   >   System.Data.OleDb.OleDbCommand
>   >       Protected WithEvents objdsCustomers As Introduction.dsCustomers
>   >       Protected WithEvents OleDbConnection1 As
>   >   System.Data.OleDb.OleDbConnection
>   >       Protected WithEvents OleDbDataAdapter1 As
>   >   System.Data.OleDb.OleDbDataAdapter
>   >       Protected WithEvents buttonLoad As
System.Web.UI.WebControls.Button
>   >       Protected WithEvents masterDataGrid As
>   >   System.Web.UI.WebControls.DataGrid
>   >
>   >   #Region " Web Form Designer Generated Code "
>   >
>   >       'This call is required by the Web Form Designer.
>   >       <System.Diagnostics.DebuggerStepThrough()> Private Sub
>   >   InitializeComponent()
>   >           Me.OleDbSelectCommand1 = New
System.Data.OleDb.OleDbCommand()
>   >           Me.OleDbConnection1 = New
System.Data.OleDb.OleDbConnection()
>   >           Me.OleDbInsertCommand1 = New
System.Data.OleDb.OleDbCommand()
>   >           '
>   >           'OleDbSelectCommand1
>   >           '
>   >           Me.OleDbSelectCommand1.CommandText = "SELECT CustomerID,
>   >   CompanyName, ContactName, ContactTitle, Address, City, Region," & _
>   >           " PostalCode, Country, Phone, Fax FROM Customers"
>   >           Me.OleDbSelectCommand1.Connection = Me.OleDbConnection1
>   >           '
>   >           'OleDbConnection1
>   >           '
>   >           Me.OleDbConnection1.ConnectionString
>   >   = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security
>   >   Info=False;Initial " & _
>   >           "Catalog=Northwind;Data Source=SERVER-KMSX8EHG\NETSDK;Use
>   >   Procedure for Prepare=1" & _
>   >           ";Auto Translate=True;Packet Size=4096;Workstation
ID=SERVER-
>   >   KMSX8EHG;Use Encrypt" & _
>   >           "ion for Data=False;Tag with column collation when
>   possible=False"
>   >           '
>   >           'OleDbInsertCommand1
>   >           '
>   >           Me.OleDbInsertCommand1.CommandText = "INSERT INTO Customers
>   >   (CustomerID, CompanyName, ContactName, ContactTitle, Address" & _
>   >           ", City, Region, PostalCode, Country, Phone, Fax) VALUES
>   >   (?, ?, ?, ?, ?, ?, ?, ?," & _
>   >           " ?, ?, ?); SELECT CustomerID, CompanyName, ContactName,
>   >   ContactTitle, Address, C" & _
>   >           "ity, Region, PostalCode, Country, Phone, Fax FROM
Customers"
>   >           Me.OleDbInsertCommand1.Connection = Me.OleDbConnection1
>   >           Me.OleDbInsertCommand1.Parameters.Add(New
>   >   System.Data.OleDb.OleDbParameter("CustomerID",
>   >   System.Data.OleDb.OleDbType.VarWChar, 5, "CustomerID"))
>   >           Me.OleDbInsertCommand1.Parameters.Add(New
>   >   System.Data.OleDb.OleDbParameter("CompanyName",
>   >   System.Data.OleDb.OleDbType.VarWChar, 40, "CompanyName"))
>   >           Me.OleDbInsertCommand1.Parameters.Add(New
>   >   System.Data.OleDb.OleDbParameter("ContactName",
>   >   System.Data.OleDb.OleDbType.VarWChar, 30, "ContactName"))
>   >           Me.OleDbInsertCommand1.Parameters.Add(New
>   >   System.Data.OleDb.OleDbParameter("ContactTitle",
>   >   System.Data.OleDb.OleDbType.VarWChar, 30, "ContactTitle"))
>   >           Me.OleDbInsertCommand1.Parameters.Add(New
>   >   System.Data.OleDb.OleDbParameter("Address",
>   >   System.Data.OleDb.OleDbType.VarWChar, 60, "Address"))
>   >           Me.OleDbInsertCommand1.Parameters.Add(New
>   >   System.Data.OleDb.OleDbParameter("City",
>   >   System.Data.OleDb.OleDbType.VarWChar, 15, "City"))
>   >           Me.OleDbInsertCommand1.Parameters.Add(New
>   >   System.Data.OleDb.OleDbParameter("Region",
>   >   System.Data.OleDb.OleDbType.VarWChar, 15, "Region"))
>   >           Me.OleDbInsertCommand1.Parameters.Add(New
>   >   System.Data.OleDb.OleDbParameter("PostalCode",
>   >   System.Data.OleDb.OleDbType.VarWChar, 10, "PostalCode"))
>   >           Me.OleDbInsertCommand1.Parameters.Add(New
>   >   System.Data.OleDb.OleDbParameter("Country",
>   >   System.Data.OleDb.OleDbType.VarWChar, 15, "Country"))
>   >           Me.OleDbInsertCommand1.Parameters.Add(New
>   >   System.Data.OleDb.OleDbParameter("Phone",
>   >   System.Data.OleDb.OleDbType.VarWChar, 24, "Phone"))
>   >           Me.OleDbInsertCommand1.Parameters.Add(New
>   >   System.Data.OleDb.OleDbParameter("Fax",
>   >   System.Data.OleDb.OleDbType.VarWChar, 24, "Fax"))
>   >
>   >       End Sub
>   >
>   >       Private Sub Page_Init(ByVal sender As System.Object, ByVal e As
>   >   System.EventArgs) Handles MyBase.Init
>   >           'CODEGEN: This method call is required by the Web Form
Designer
>   >           'Do not modify it using the code editor.
>   >           InitializeComponent()
>   >       End Sub
>   >
>   >   #End Region
>   >
>   >       Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
>   >   System.EventArgs) Handles MyBase.Load
>   >           'Put user code to initialize the page here
>   >       End Sub
>   >
>   >       Private Sub buttonLoad_Click(ByVal sender As System.Object,
ByVal e
>   As
>   >   System.EventArgs) Handles buttonLoad.Click
>   >           Try
>   >               Me.LoadDataSet()
>   >               Me.masterDataGrid.SelectedIndex = -1
>   >               Me.masterDataGrid.DataBind()
>   >           Catch eLoad As System.Exception
>   >               Me.Response.Write(eLoad.Message)
>   >           End Try
>   >
>   >       End Sub
>   >       Public Sub LoadDataSet()
>   >           'Create a new dataset to hold the records returned from the
call
>   >   to FillDataSet.
>   >           'A temporary dataset is used because filling the existing
>   dataset
>   >   would
>   >           'require the databindings to be rebound.
>   >           Dim objDataSetTemp As Introduction.dsCustomers
>   >           objDataSetTemp = New Introduction.dsCustomers()
>   >           Try
>   >               'Attempt to fill the temporary dataset.
>   >               Me.FillDataSet(objDataSetTemp)
>   >           Catch eFillDataSet As System.Exception
>   >               'Add your error handling code here.
>   >               Throw eFillDataSet
>   >           End Try
>   >           Try
>   >               'Empty the old records from the dataset.
>   >               objdsCustomers.Clear()
>   >               'Merge the records into the main dataset.
>   >               objdsCustomers.Merge(objDataSetTemp)
>   >           Catch eLoadMerge As System.Exception
>   >               'Add your error handling code here.
>   >               Throw eLoadMerge
>   >           End Try
>   >
>   >       End Sub
>   >       Public Sub FillDataSet(ByVal dataSet As
Introduction.dsCustomers)
>   >           'Turn off constraint checking before the dataset is filled.
>   >           'This allows the adapters to fill the dataset without
concern
>   >           'for dependencies between the tables.
>   >           dataSet.EnforceConstraints = False
>   >           Try
>   >               'Open the connection.
>   >               Me.OleDbConnection1.Open()
>   >               'Attempt to fill the dataset through the
OleDbDataAdapter1.
>   >               Me.OleDbDataAdapter1.Fill(dataSet)
>   >           Catch fillException As System.Exception
>   >               'Add your error handling code here.
>   >               Throw fillException
>   >           Finally
>   >               'Turn constraint checking back on.
>   >               dataSet.EnforceConstraints = True
>   >               'Close the connection whether or not the exception was
>   thrown.
>   >               Me.OleDbConnection1.Close()
>   >           End Try
>   >
>   >       End Sub
>   >   End Class
>   >
>   >
>   >   After Button_Click event, I am getting the following message:
>   >
>   >   Object reference not set to an instance of an object.
>   >
>   >   What I am missing here.
>   >
>   >   TIA
>   >   Sam
>   >
>   >
>
>
>
>


  Return to Index