IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linq Discussion :

Problème linq to object


Sujet :

Linq

  1. #1
    Nouveau membre du Club

    Inscrit en
    Février 2006
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 29
    Points : 27
    Points
    27
    Par défaut Problème linq to object
    Bonjour

    J'ai un problème que je n'arrive pas à résoudre dans une requête linq

    J'essaye de créer une énumération des contrôles actifs sur mon formulaire via une requête linq.
    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
            Dim ControlsEnabled = _
                From c As Control In Me.Controls _
                Where c.Enabled _
                Select c
    Et j'obtiens l'erreur suivante :
    Option Strict On interdit les conversions implicites de 'Object' en 'System.Windows.Forms.Control'
    Pourquoi je ne peux pas typer la variable c via l'instruction As ?


    Du coup je suis obligé de l'écrire de la manière suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
            Dim ControlsEnabled = _
                From c In Me.Controls _
                Where CType(c, Control).Enabled _
                Select CType(c, Control)
    Mes options de compilation sont les suivantes :
    Option Compare Binary
    Option Explicit On
    Option Strict On
    Option Infer On

    Merci d'avance

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    240
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 240
    Points : 254
    Points
    254
    Par défaut
    Je débute en dotnet et je ne connais pas cette structure.
    Cependant, dans ton premier code tu fais un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Dim ControlsEnabled = ...
    Ton "ControlsEnabled" n'étant pas explicitement typé, il est donc de type Object.
    le Code suivant devrait marcher :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Dim ControlsEnabled as Control = ...

  3. #3
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Points : 6 334
    Points
    6 334
    Par défaut
    Voila comment je l'écrirais en C# :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var ControlsEnabled = from c in Controls.Cast<Control>()
                          where c.Enabled = true
                          select c;
    En utilisant Cast sur la propriété Controls.
    Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.

    Bonnes pratiques pour les accès aux données
    Débogage efficace en .NET
    LINQ to Objects : l'envers du décor

    Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter

Discussions similaires

  1. Problème avec LINQ TO OBJECT
    Par Voilaflea dans le forum VB.NET
    Réponses: 3
    Dernier message: 31/08/2012, 15h46
  2. probléme de vector object
    Par vanesa dans le forum Collection et Stream
    Réponses: 5
    Dernier message: 07/04/2008, 12h20
  3. [Problème] Vertex Buffer Object
    Par Soznor dans le forum OpenGL
    Réponses: 20
    Dernier message: 19/07/2007, 18h44
  4. problème de cast object
    Par root76 dans le forum Langage
    Réponses: 14
    Dernier message: 12/04/2007, 13h42
  5. Problème avec xmlHttp object
    Par warmup27 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 09/04/2007, 19h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo