2016-01-18 3 views
0

J'ai essayé d'obtenir telerik valeur zone de liste déroulante plusieurs lorsque l'utilisateur sélectionne une ligne que je veux l'obtenir est la première colonne de celui-ciVS lancers francs courir erreur de temps en essayé d'obtenir la valeur de telerik valeur boîte multi combo

mais cette course est temps Erro jeté

référence d'objet non définie à une instance d'un objet

dans la dernière ligne de ce code

static class Program 
{ 
    /// <summary> 
    /// The main entry point for the application. 
    /// </summary> 
    [STAThread] 
    static void Main() 
    { 
     Application.EnableVisualStyles(); 
     Application.SetCompatibleTextRenderingDefault(false); 
     Application.Run(new Form1()); 
    } 
} 

et je l'ai cherché partout je sais waht cette erreur de temps d'exécution est, mais je ne sais pas comment le résoudre

c'est mon code

 private void cmbbEmply_SelectedIndexChanged(object sender, EventArgs e) 
    { 
     GetEmp = (int)cmbbEmply.EditorControl 
           .Rows[cmbbEmply.SelectedIndex].Cells[0].Value; 
    } 

s'il vous plaît ne me diriger pas à une autre page je les ai tous lus et je n'ai pas pu comprendre où mon problème est

+0

SUGGESTION: 1) Allez dans votre débogueur VSM, 2) Définir un point d'arrêt juste avant l'erreur se produit, 3) * REGARDEZ VARIABLES * à déterminer quelle variable est l'objet non initialisé – paulsm4

+0

@ paulsm4 comment faire l'étape 3 ?? – NeverTrust

+0

[MSDN: fenêtre Autos and Locals] (https://msdn.microsoft.com/en-us/library/bhawk8xd.aspx). Voir aussi: [Débogage dans Visual Studio] (https://msdn.microsoft.com/fr-fr/library/sc65sadd.aspx) – paulsm4

Répondre

0

Quelle est la valeur de SelectedIndex dans le gestionnaire? Il peut être -1 si aucune ligne sélectionnée n'est présente, par conséquent, vous obtiendrez cette exception car vous ne pouvez pas trouver la ligne -1 dans la collection rows.

+0

Je l'ai toujours vérifié a une valeur, cuase lorsque le formulaire charge, il va courir et quand l'utilisateur sélectionne quelque chose qu'il réexécutera – NeverTrust

+0

Ensuite, vous devrez vous assurer que cmbbEmply.EditorControl .Rows [cmbbEmply.SelectedIndex] .Cells [0] n'est pas nul. Si ce n'est pas le cas, la dernière chose à faire est de s'assurer que la valeur n'est pas nulle, car vous ne pouvez pas convertir null en int. Si c'est le cas, vous devriez utiliser int, TryParse ou Convert.ToInt32 (https://msdn.microsoft.com/en-us/library/f4a76a1x.aspx) – checho

+0

je l'ai fait, et j'ai aussi vérifié à nouveau, ' GetCustomerId' n'est jamais -1 ça a toujours de la valeur – NeverTrust

0

Je suppose que je devais utiliser un formulaire telerik au lieu de la forme VS