Help with data grid please

Please support our VB.NET advertiser: Intel Parallel Studio Home
Reply

Join Date: Apr 2007
Posts: 4
Reputation: nikki23 is an unknown quantity at this point 
Solved Threads: 0
nikki23 nikki23 is offline Offline
Newbie Poster

Help with data grid please

 
0
  #1
Apr 29th, 2007
I am trying to show info at the bottom of my data grid I get error saying object reference not set to an instance of an object Here is my code Imports System.data
Imports System.data.OleDb
Imports System.Configuration
Partial Class supplier
Inherits System.Web.UI.Page
Dim ConnString As String = ConfigurationManager.AppSettings("ConnString")
Dim dbPath As String = ConfigurationManager.AppSettings("PathDB")

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
getsuppliers()
dgsuppliers.DataSource = Session("Suppliers")

End If
End Sub


Private Sub getsuppliers()


Dim mySQL As String = "select * from Suppliers "
Dim dbConn As New OleDbConnection(ConnString & Server.MapPath(dbPath))
Dim dbCommand As New OleDbCommand(mySQL, dbConn)
Dim dbAdapter As New OleDbDataAdapter(dbCommand)
Dim dsSuppliers As New DataSet


Try
dbConn.Open()
dbAdapter.Fill(dsSuppliers, "Suppliers")
Catch ex As Exception
lblResults.Text = "Error occurred when retrieving data from Table: " & ex.Message
Finally
dbConn.Close()
End Try
dgsuppliers.DataSource = dsSuppliers
dgsuppliers.DataBind()
End Sub
Private Sub dgsuppliers_PageIndexChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewPageEventArgs) Handles dgsuppliers.PageIndexChanging
End Sub



Protected Sub dgsuppliers_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles dgsuppliers.SelectedIndexChanged

Dim mysql As String = "Select * from Suppliers where SupplierID=" & dgsuppliers.SelectedValue & ""
Dim dbConn As New OleDbConnection(ConnString & Server.MapPath(dbPath))
Dim dbCommand As New OleDbCommand(mysql, dbConn)
Dim dbAdapter As New OleDbDataAdapter(dbCommand)
Dim dsSuppliers As New DataSet
Dim supplierRow As DataRow

supplierRow = dsSuppliers.Tables("Suppliers").Rows(0)
supplierRow("CompanyName") = lblName.Text
supplierRow("ContactName") = lblContact.Text
supplierRow("ContactTitle") = lblTitle.Text
supplierRow("Address") = lblAddress.Text
supplierRow("City") = lblCity.Text
supplierRow("Region") = lblRegion.Text
supplierRow("PostalCode") = lblPostal.Text
supplierRow("Country") = lblCountry.Text
supplierRow("Phone") = lblPhone.Text
supplierRow("Fax") = lblFax.Text
supplierRow("Homepage") = lblHomepage.Text
dsSuppliers.Tables.Add("Suppliers").Rows.Add(supplierRow)





dgsuppliers.DataSource = dsSuppliers.Tables





End Sub
End Class

Reply With Quote Quick reply to this message  
Join Date: Oct 2006
Posts: 169
Reputation: ptaylor965 is an unknown quantity at this point 
Solved Threads: 19
Sponsor
ptaylor965's Avatar
ptaylor965 ptaylor965 is offline Offline
Junior Poster

Re: Help with data grid please

 
0
  #2
Apr 29th, 2007
i can see two possible problems

to add a new row to a dataset user datarows

supplierRow = dsSuppliers.Tables("Suppliers").NewRow

and when binding to tables you need to declare the table
dgsuppliers.DataSource = dsSuppliers.Tables
("Suppliers")
Last edited by ptaylor965; Apr 29th, 2007 at 7:49 pm.
Reply With Quote Quick reply to this message  
Join Date: Apr 2007
Posts: 3
Reputation: taralsoni is an unknown quantity at this point 
Solved Threads: 1
taralsoni taralsoni is offline Offline
Newbie Poster

Re: Help with data grid please

 
0
  #3
Apr 30th, 2007
Originally Posted by nikki23 View Post
I am trying to show info at the bottom of my data grid I get error saying object reference not set to an instance of an object Here is my code Imports System.data
Imports System.data.OleDb
Imports System.Configuration
Partial Class supplier
Inherits System.Web.UI.Page
Dim ConnString As String = ConfigurationManager.AppSettings("ConnString")
Dim dbPath As String = ConfigurationManager.AppSettings("PathDB")

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
getsuppliers()
dgsuppliers.DataSource = Session("Suppliers")

End If
End Sub


Private Sub getsuppliers()


Dim mySQL As String = "select * from Suppliers "
Dim dbConn As New OleDbConnection(ConnString & Server.MapPath(dbPath))
Dim dbCommand As New OleDbCommand(mySQL, dbConn)
Dim dbAdapter As New OleDbDataAdapter(dbCommand)
Dim dsSuppliers As New DataSet


Try
dbConn.Open()
dbAdapter.Fill(dsSuppliers, "Suppliers")
Catch ex As Exception
lblResults.Text = "Error occurred when retrieving data from Table: " & ex.Message
Finally
dbConn.Close()
End Try
dgsuppliers.DataSource = dsSuppliers
dgsuppliers.DataBind()
End Sub
Private Sub dgsuppliers_PageIndexChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewPageEventArgs) Handles dgsuppliers.PageIndexChanging
End Sub



Protected Sub dgsuppliers_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles dgsuppliers.SelectedIndexChanged

Dim mysql As String = "Select * from Suppliers where SupplierID=" & dgsuppliers.SelectedValue & ""
Dim dbConn As New OleDbConnection(ConnString & Server.MapPath(dbPath))
Dim dbCommand As New OleDbCommand(mysql, dbConn)
Dim dbAdapter As New OleDbDataAdapter(dbCommand)
Dim dsSuppliers As New DataSet
Dim supplierRow As DataRow

supplierRow = dsSuppliers.Tables("Suppliers").Rows(0)
supplierRow("CompanyName") = lblName.Text
supplierRow("ContactName") = lblContact.Text
supplierRow("ContactTitle") = lblTitle.Text
supplierRow("Address") = lblAddress.Text
supplierRow("City") = lblCity.Text
supplierRow("Region") = lblRegion.Text
supplierRow("PostalCode") = lblPostal.Text
supplierRow("Country") = lblCountry.Text
supplierRow("Phone") = lblPhone.Text
supplierRow("Fax") = lblFax.Text
supplierRow("Homepage") = lblHomepage.Text
dsSuppliers.Tables.Add("Suppliers").Rows.Add(supplierRow)





dgsuppliers.DataSource = dsSuppliers.Tables





End Sub
End Class

Ehy dear,
Please follow the following steps:
1. add this line in getsuppliers() function in try block
dbconn.dospose()

2. In dgsuppliers_SelectedIndexChanged function you have declared datarow. Your line of code is as follows:

Dim supplierRow As DataRow

change it as follows:

Dim supplierRow As new DataRow

or

Dim supplierRow as DataRow = New DataRow()
Your problem is solved now.

I have checked it. You have not declared the instance of datarow. Thats why it was giving an error.
Reply With Quote Quick reply to this message  
Join Date: Apr 2007
Posts: 4
Reputation: nikki23 is an unknown quantity at this point 
Solved Threads: 0
nikki23 nikki23 is offline Offline
Newbie Poster

Re: Help with data grid please

 
0
  #4
Apr 30th, 2007
I tried but I still have a problem. I am trying to show info at the bottom of my grid when I click on a command field in my table. I am stuck on how to finish. The design code for the grid is here

%@ Page Language="VB" AutoEventWireup="false" CodeFile="supplier.aspx.vb" Inherits="supplier" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
&nbsp; &nbsp;


<asp:GridView ID="dgsuppliers" runat="server" AllowPaging="True" AutoGenerateColumns="False" CellPadding="4" DataKeyNames ="SupplierId"
foreColor="#333333" GridLines= "None">

<Columns>
<asp:BoundField DataField="SupplierID" HeaderText="Supplir ID " />
<asp:BoundField DataField="CompanyName" HeaderText="Supplier Name" />
<asp:CommandField SelectText="More Details" ShowSelectButton="True"/>
</Columns>
<RowStyle BackColor="#0E3AEB" />
<EditRowStyle BackColor="#7C6F57" />
<SelectedRowStyle BackColor="#C5BBAF" Font-Bold="True" Forecolor="#333333" />
<PagerStyle BackColor="#666666" ForeColor="White" HorizontalAlign="Center" />
<HeaderStyle BackColor="#01CE55" Font-Bold="True" ForeColor="White" />
<AlternatingRowStyle BackColor ="White" />


</asp:GridView>
<br />
<asp:Label ID="lblName" runat="server" Width="344px"></asp:Label><br />
<asp:Label ID="lblContact" runat="server" Width="344px"></asp:Label><br />
<asp:Label ID="lblAddress" runat="server" Width="344px"></asp:Label><br />
<asp:Label ID="lblCity" runat="server" Width="344px"></asp:Label> <br />
<asp:Label ID="lblPhone" runat="server" Width="344px"></asp:Label><br />
<asp:Label ID="lblFax" runat="server" Width="344px"></asp:Label><br />
<asp:Label ID="lblTitle" runat="server" Width="344px"></asp:Label><br />
<asp:Label ID="lblRegion" runat="server" Width="344px"></asp:Label> <br />
<asp:Label ID ="lblPostal" runat="server" Width="344px"></asp:Label><br />
<asp:Label ID="lblCountry" runat="server" Width="344px"></asp:Label><br />

<asp:Label ID="lblHomepage" runat="server" Width="344px"></asp:Label><br />

<asp:Label ID="lblResults" runat="server" Text="Label"></asp:Label>



<div>

</div>
</form>
</body>
</html>
Reply With Quote Quick reply to this message  
Join Date: Apr 2007
Posts: 3
Reputation: taralsoni is an unknown quantity at this point 
Solved Threads: 1
taralsoni taralsoni is offline Offline
Newbie Poster

Re: Help with data grid please

 
0
  #5
Apr 30th, 2007
hey i have checked it out. Okay do one thing. I am still not getting the kind of problem you have. Better mail me following things:

1. Code
2. Error message copy + paste
3. Error message print screen
4. Purpose of code.

Mail above details on taralsoni@gmail.com

Thank you.
Regards
Reply With Quote Quick reply to this message  
Join Date: Jan 2007
Posts: 47
Reputation: kapil.goyal is an unknown quantity at this point 
Solved Threads: 0
kapil.goyal kapil.goyal is offline Offline
Light Poster

Re: Help with data grid please

 
0
  #6
May 3rd, 2007
do this mydataset.fillschema and then create new row as ds.table("tablename").newrow.

i think this will solve ur problem.
Reply With Quote Quick reply to this message  
Reply

This thread is more than three months old.
Perhaps start a new thread instead?
Message:


Thread Tools Search this Thread



About Us | Contact Us | Advertise | DaniWeb | Acceptable Use Policy | RSS Feed

©2003 - 2009 DaniWeb® LLC