Pb Gridview

Le
Emilie
Bonjour



Je veux créer un gridview (1 colonnne) imbriqué : GdvMarque avec un
AccessDataSource : AdsRayon, dans un GridView (2 colonnes) parent :
GdvOffreFourn avec un AccessDataSource : AdsMarque



Je veux afficher dans GdvMarque les marques correspondant à IDrayon de
AdsMarque et AdsRayon, quand je lance l'appli j'ai le message suivant :



La référence d'objet n'est pas définie à une instance d'un objet.



Voici mon code



VB :



Protected Sub GdvOffreFourn_RowDataBound(ByVal sender As Object, ByVal e As
System.Web.UI.WebControls.GridViewRowEventArgs) Handles
GdvOffreFourn.RowDataBound

If e.Row.RowType = DataControlRowType.DataRow Then

Dim s As AccessDataSource =
CType(e.Row.FindControl("AdsMarque"), AccessDataSource)

s.SelectParameters(0).DefaultValue = e.Row.Cells(0).Text

End If

End Sub



ASP :



<asp:AccessDataSource ID="AdsRayon" runat="server"

DataFile="~/Produits.mdb"

SelectCommand="SELECT * FROM [Fournisseurs_Rayons] WHERE ([IDfournisseur] =
?)">

<SelectParameters>

<asp:SessionParameter Name="IDfournisseur" SessionField="IDfournisseur"

Type="String" />

</SelectParameters>

</asp:AccessDataSource>

<asp:AccessDataSource ID="AdsMarque" runat="server"

DataFile="~/ Produits.mdb "

SelectCommand="SELECT * FROM [Fournisseurs_Marques] WHERE ([IDrayon] =
'{0}')">

<SelectParameters>

<asp:SessionParameter Name="IDrayon" SessionField="IDrayon"

Type="String" />

</SelectParameters>

</asp:AccessDataSource>



Pouvez-vous me dire ou est l'erreur

Merci pour votre aide

Emilie
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
jchtible
Le #18569831
Hum ... je ne vois pas trop ce que tu veux faire exactement mais une chose
utile serait de "tester" certaines variable de ton code vb.

Voila un petit arragement maison de ton code:


Protected Sub GdvOffreFourn_RowDataBound(ByVal sender As Object, ByVal e As
System.Web.UI.WebControls.GridViewRowEventArgs) Handles
GdvOffreFourn.RowDataBound

If e.Row.RowType = DataControlRowType.DataRow Then


Dim s As AccessDataSource = CType(e.Row.FindControl("AdsMarque"),
AccessDataSource)

If s IsNot Nothing Then
if e.Row.Cells(0) IsNot Nothing

s.SelectParameters(0).DefaultValue = e.Row.Cells(0).Text
End if
End if

End If

End Sub


"Emilie" wrote:

Bonjour



Je veux créer un gridview (1 colonnne) imbriqué : GdvMarque avec un
AccessDataSource : AdsRayon, dans un GridView (2 colonnes) parent :
GdvOffreFourn avec un AccessDataSource : AdsMarque



Je veux afficher dans GdvMarque les marques correspondant à IDrayon de
AdsMarque et AdsRayon, quand je lance l'appli j'ai le message suivant :



La référence d'objet n'est pas définie à une instance d'un objet.



Voici mon code



VB :



Protected Sub GdvOffreFourn_RowDataBound(ByVal sender As Object, ByVal e As
System.Web.UI.WebControls.GridViewRowEventArgs) Handles
GdvOffreFourn.RowDataBound

If e.Row.RowType = DataControlRowType.DataRow Then

Dim s As AccessDataSource > CType(e.Row.FindControl("AdsMarque"), AccessDataSource)

s.SelectParameters(0).DefaultValue = e.Row.Cells(0).Text

End If

End Sub



ASP :



<asp:AccessDataSource ID="AdsRayon" runat="server"

DataFile="~/Produits.mdb"

SelectCommand="SELECT * FROM [Fournisseurs_Rayons] WHERE ([IDfournisseur] > ?)">

<SelectParameters>

<asp:SessionParameter Name="IDfournisseur" SessionField="IDfournisseur"

Type="String" />

</SelectParameters>

</asp:AccessDataSource>

<asp:AccessDataSource ID="AdsMarque" runat="server"

DataFile="~/ Produits.mdb "

SelectCommand="SELECT * FROM [Fournisseurs_Marques] WHERE ([IDrayon] > '{0}')">

<SelectParameters>

<asp:SessionParameter Name="IDrayon" SessionField="IDrayon"

Type="String" />

</SelectParameters>

</asp:AccessDataSource>



Pouvez-vous me dire ou est l'erreur

Merci pour votre aide

Emilie






Emilie
Le #18578411
Bonjour et merci pour ta réponse

j'ai modifié le code et la condition :
If e.Row.RowType = DataControlRowType.DataRow Then
n'est pas remplie, cela passe directement au end if

Le gridview rayon est rempli
mais le Gridview marque ne s'affiche pas

Cordialement
Emilie
"jchtible" news:

Hum ... je ne vois pas trop ce que tu veux faire exactement mais une chose
utile serait de "tester" certaines variable de ton code vb.

Voila un petit arragement maison de ton code:


Protected Sub GdvOffreFourn_RowDataBound(ByVal sender As Object, ByVal e
As
System.Web.UI.WebControls.GridViewRowEventArgs) Handles
GdvOffreFourn.RowDataBound

If e.Row.RowType = DataControlRowType.DataRow Then


Dim s As AccessDataSource = CType(e.Row.FindControl("AdsMarque"),
AccessDataSource)

If s IsNot Nothing Then
if e.Row.Cells(0) IsNot Nothing

s.SelectParameters(0).DefaultValue = e.Row.Cells(0).Text
End if
End if

End If

End Sub


"Emilie" wrote:

Bonjour



Je veux créer un gridview (1 colonnne) imbriqué : GdvMarque avec un
AccessDataSource : AdsRayon, dans un GridView (2 colonnes) parent :
GdvOffreFourn avec un AccessDataSource : AdsMarque



Je veux afficher dans GdvMarque les marques correspondant à IDrayon de
AdsMarque et AdsRayon, quand je lance l'appli j'ai le message suivant :



La référence d'objet n'est pas définie à une instance d'un objet.



Voici mon code



VB :



Protected Sub GdvOffreFourn_RowDataBound(ByVal sender As Object, ByVal e
As
System.Web.UI.WebControls.GridViewRowEventArgs) Handles
GdvOffreFourn.RowDataBound

If e.Row.RowType = DataControlRowType.DataRow Then

Dim s As AccessDataSource >> CType(e.Row.FindControl("AdsMarque"), AccessDataSource)

s.SelectParameters(0).DefaultValue = e.Row.Cells(0).Text

End If

End Sub



ASP :



<asp:AccessDataSource ID="AdsRayon" runat="server"

DataFile="~/Produits.mdb"

SelectCommand="SELECT * FROM [Fournisseurs_Rayons] WHERE ([IDfournisseur]
>> ?)">

<SelectParameters>

<asp:SessionParameter Name="IDfournisseur" SessionField="IDfournisseur"

Type="String" />

</SelectParameters>

</asp:AccessDataSource>

<asp:AccessDataSource ID="AdsMarque" runat="server"

DataFile="~/ Produits.mdb "

SelectCommand="SELECT * FROM [Fournisseurs_Marques] WHERE ([IDrayon] >> '{0}')">

<SelectParameters>

<asp:SessionParameter Name="IDrayon" SessionField="IDrayon"

Type="String" />

</SelectParameters>

</asp:AccessDataSource>



Pouvez-vous me dire ou est l'erreur

Merci pour votre aide

Emilie








jchtible
Le #18600961
A mon (humble) avis, la condition sur le type de Row ne sert pas à grand
chose ...



"Emilie" wrote:

Bonjour et merci pour ta réponse

j'ai modifié le code et la condition :
If e.Row.RowType = DataControlRowType.DataRow Then
n'est pas remplie, cela passe directement au end if

Le gridview rayon est rempli
mais le Gridview marque ne s'affiche pas

Cordialement
Emilie
"jchtible" news:
>
> Hum ... je ne vois pas trop ce que tu veux faire exactement mais une chose
> utile serait de "tester" certaines variable de ton code vb.
>
> Voila un petit arragement maison de ton code:
>
>
> Protected Sub GdvOffreFourn_RowDataBound(ByVal sender As Object, ByVal e
> As
> System.Web.UI.WebControls.GridViewRowEventArgs) Handles
> GdvOffreFourn.RowDataBound
>
> If e.Row.RowType = DataControlRowType.DataRow Then
>
>
> Dim s As AccessDataSource = CType(e.Row.FindControl("AdsMarque"),
> AccessDataSource)
>
> If s IsNot Nothing Then
> if e.Row.Cells(0) IsNot Nothing
>
> s.SelectParameters(0).DefaultValue = e.Row.Cells(0).Text
> End if
> End if
>
> End If
>
> End Sub
>
>
> "Emilie" wrote:
>
>> Bonjour
>>
>>
>>
>> Je veux créer un gridview (1 colonnne) imbriqué : GdvMarque avec un
>> AccessDataSource : AdsRayon, dans un GridView (2 colonnes) parent :
>> GdvOffreFourn avec un AccessDataSource : AdsMarque
>>
>>
>>
>> Je veux afficher dans GdvMarque les marques correspondant à IDrayon de
>> AdsMarque et AdsRayon, quand je lance l'appli j'ai le message suivant :
>>
>>
>>
>> La référence d'objet n'est pas définie à une instance d'un objet.
>>
>>
>>
>> Voici mon code
>>
>>
>>
>> VB :
>>
>>
>>
>> Protected Sub GdvOffreFourn_RowDataBound(ByVal sender As Object, ByVal e
>> As
>> System.Web.UI.WebControls.GridViewRowEventArgs) Handles
>> GdvOffreFourn.RowDataBound
>>
>> If e.Row.RowType = DataControlRowType.DataRow Then
>>
>> Dim s As AccessDataSource > >> CType(e.Row.FindControl("AdsMarque"), AccessDataSource)
>>
>> s.SelectParameters(0).DefaultValue = e.Row.Cells(0).Text
>>
>> End If
>>
>> End Sub
>>
>>
>>
>> ASP :
>>
>>
>>
>> <asp:AccessDataSource ID="AdsRayon" runat="server"
>>
>> DataFile="~/Produits.mdb"
>>
>> SelectCommand="SELECT * FROM [Fournisseurs_Rayons] WHERE ([IDfournisseur]
>> > >> ?)">
>>
>> <SelectParameters>
>>
>> <asp:SessionParameter Name="IDfournisseur" SessionField="IDfournisseur"
>>
>> Type="String" />
>>
>> </SelectParameters>
>>
>> </asp:AccessDataSource>
>>
>> <asp:AccessDataSource ID="AdsMarque" runat="server"
>>
>> DataFile="~/ Produits.mdb "
>>
>> SelectCommand="SELECT * FROM [Fournisseurs_Marques] WHERE ([IDrayon] > >> '{0}')">
>>
>> <SelectParameters>
>>
>> <asp:SessionParameter Name="IDrayon" SessionField="IDrayon"
>>
>> Type="String" />
>>
>> </SelectParameters>
>>
>> </asp:AccessDataSource>
>>
>>
>>
>> Pouvez-vous me dire ou est l'erreur
>>
>> Merci pour votre aide
>>
>> Emilie
>>
>>
>>
>>





Publicité
Poster une réponse
Anonyme