Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

"... il ne s'agit pas de la première classe du fichier" ? C'est quoi ?

5 réponses
Avatar
Olivier
Bonjour

J'essaye d'utiliser ce controle :
http://www.vbaccelerator.com/home/NET/Code/Controls/ListBar/Button_List_Bar/article.asp

J'insère donc le fichier ButtonListBar.vb dans mon projet, mais lorsque je
veux voir le controle j'ai une erreur :

<--
La classe ButtonListBar peut être conçue, mais il ne s'agit pas de la
première classe du fichier.
Visual Studio requiert que les concepteurs utilisent la première classe du
fichier.
Déplacez le code de la classe afin qu'il s'agisse de la première classe du
fichier et essayez de recharger le concepteur.
-->

Ca veut dire quoi, et comment corriger ?

Merci
Olivier

5 réponses

Avatar
Patrick Philippot
Olivier wrote:
J'essaye d'utiliser ce controle :
http://www.vbaccelerator.com/home/NET/Code/Controls/ListBar/Button_List_Bar/article.asp

J'insère donc le fichier ButtonListBar.vb dans mon projet, mais
lorsque je veux voir le controle j'ai une erreur :

<--
La classe ButtonListBar peut être conçue, mais il ne s'agit pas de la
première classe du fichier.
Visual Studio requiert que les concepteurs utilisent la première
classe du fichier.
Déplacez le code de la classe afin qu'il s'agisse de la première
classe du fichier et essayez de recharger le concepteur.
-->

Ca veut dire quoi, et comment corriger ?



Bonjour,

Le concepteur visuel utilise la première classe rencontrée dans le
fichier source comme classe de travail. Cette erreur est provoquée quand
quelque chose (une déclaration) a été inséré dans le fichier source
*avant* la classe en question. Elle doit être la première classe
déclarée dans le fichier. Arrangez vous pour déplacer le code de cette
classe en tête de fichier.

Cependant, un doute m'assaille :-) ... Auriez vous par hasard inséré
directement le code source de ce contrôle dans votre projet (ce que
laisse supposer votre message) au lieu de compiler le contrôle
séparément et de le référencer dans ce projet, ce qui serait plus
orthodoxe? Je ne pense pas que ce code a été prévu pour être utilisé de
cette manière.

--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr
Avatar
Olivier
Oui j'ai intégré le code .vb dans mon projet.
ben...
J'ai suivi ce qui a été écrit dans le site ??

Olivier


"Patrick Philippot" a écrit dans le
message de news:
Olivier wrote:
> J'essaye d'utiliser ce controle :
>


http://www.vbaccelerator.com/home/NET/Code/Controls/ListBar/Button_List_Bar/article.asp
>
> J'insère donc le fichier ButtonListBar.vb dans mon projet, mais
> lorsque je veux voir le controle j'ai une erreur :
>
> <--
> La classe ButtonListBar peut être conçue, mais il ne s'agit pas de la
> première classe du fichier.
> Visual Studio requiert que les concepteurs utilisent la première
> classe du fichier.
> Déplacez le code de la classe afin qu'il s'agisse de la première
> classe du fichier et essayez de recharger le concepteur.
> -->
>
> Ca veut dire quoi, et comment corriger ?

Bonjour,

Le concepteur visuel utilise la première classe rencontrée dans le
fichier source comme classe de travail. Cette erreur est provoquée quand
quelque chose (une déclaration) a été inséré dans le fichier source
*avant* la classe en question. Elle doit être la première classe
déclarée dans le fichier. Arrangez vous pour déplacer le code de cette
classe en tête de fichier.

Cependant, un doute m'assaille :-) ... Auriez vous par hasard inséré
directement le code source de ce contrôle dans votre projet (ce que
laisse supposer votre message) au lieu de compiler le contrôle
séparément et de le référencer dans ce projet, ce qui serait plus
orthodoxe? Je ne pense pas que ce code a été prévu pour être utilisé de
cette manière.

--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr




Avatar
Patrick Philippot
Olivier wrote:
Oui j'ai intégré le code .vb dans mon projet.
ben...
J'ai suivi ce qui a été écrit dans le site ??



Si vous suivez les instructions du site, ça ne fonctionne pas. Si vous
voulez utiliser le contrôle de cette manière, faites comme j'ai dit plus
haut: déplacez tout le bloc #Region " ButtonListBar " en tête de
fichier, juste après la ligne namespace. Cela vous permet de visualiser
le code et de le voir dans la toolbox mais dès que vous allez essayer de
l'insérer sur la feuille principale, cela va planter. Ce n'est pas comme
cela qu'il faut procéder.

Je vous suggère donc très fortement de compiler ce contrôle séparément
dans une bibliothèque de composants (DLL) et de le référencer ensuite
dans les projets où vous voudrez l'utiliser. Ce sera beaucoup plus
propre. Je l'ai fait, ça prend quelques minutes. Ajoutez un projet de
type Class Library à votre solution, supprimez le fichier créé par
défaut, ajoutez le fichier ButtonListBar.vb, faites les corrections
ci-dessous:

(le code contient quelques omissions: il faut ajouter en tête de fichier
ButtonListBar.vb :

Imports System.Windows.Forms
Imports System.Drawing

Compilez le composant. Référencez la DLL produite dans votre projet
principal et hop, ça roule. :-)

--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr
Avatar
Olivier
Cool.

Merci
Olivier



"Patrick Philippot" a écrit dans le
message de news:%
Olivier wrote:
> Oui j'ai intégré le code .vb dans mon projet.
> ben...
> J'ai suivi ce qui a été écrit dans le site ??

Si vous suivez les instructions du site, ça ne fonctionne pas. Si vous
voulez utiliser le contrôle de cette manière, faites comme j'ai dit plus
haut: déplacez tout le bloc #Region " ButtonListBar " en tête de
fichier, juste après la ligne namespace. Cela vous permet de visualiser
le code et de le voir dans la toolbox mais dès que vous allez essayer de
l'insérer sur la feuille principale, cela va planter. Ce n'est pas comme
cela qu'il faut procéder.

Je vous suggère donc très fortement de compiler ce contrôle séparément
dans une bibliothèque de composants (DLL) et de le référencer ensuite
dans les projets où vous voudrez l'utiliser. Ce sera beaucoup plus
propre. Je l'ai fait, ça prend quelques minutes. Ajoutez un projet de
type Class Library à votre solution, supprimez le fichier créé par
défaut, ajoutez le fichier ButtonListBar.vb, faites les corrections
ci-dessous:

(le code contient quelques omissions: il faut ajouter en tête de fichier
ButtonListBar.vb :

Imports System.Windows.Forms
Imports System.Drawing

Compilez le composant. Référencez la DLL produite dans votre projet
principal et hop, ça roule. :-)

--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr




Avatar
Patrick Philippot
Olivier wrote:
Cool.



(le code contient quelques omissions: il faut ajouter en tête de
fichier
ButtonListBar.vb :

Imports System.Windows.Forms
Imports System.Drawing





Et ajouter les références correspondantes si nécessaire, bien sûr.

--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr