Conversion int en string?

Résolu
shadow1779 Messages postés 706 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2013 - 16 nov. 2008 à 13:58
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 - 16 nov. 2008 à 21:45
Bonjour,

je débute en C# et j'ai commencé a me faire une petite application simple pour lister des process dans un listview et réaliser des opérations dessus (kill, mettre au premier plan...). Le seul soucis que j'ai actuellement est le coté fortement typé de C#, ma méthode mainForm_Load doit remplir le listview (en mode détail) avec la liste des processus, cependant les éléments retournés sont parfois des entiers, et les items du listview doivent être de type string.

        private void mainForm_Load(object sender, EventArgs e)
        {
            Process[] processes = Process.GetProcesses();
            var query = from p in processes
                        select p;

            foreach(Process process in query){
                ListViewItem item = new ListViewItem();
                item.SubItems[0].Text = process.Id;  // Impossible de convertir implicitement le type 'int' en 'string'
                item.SubItems[1].Text = process.ProcessName;
                item.SubItems[2].Text = process.PrivateMemorySize; // idem
                item.SubItems[4].Text = process.ProcessorAffinity; // idem mais 'System.IntPtr' en 'string'
                lstProcesses.Items.Add(item);
            }
        }

Comment faire cela proprement?

Merci d'avance :)
A voir également:

6 réponses

cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
16 nov. 2008 à 15:07
Salut,

Tout type possède une méthode ToString permettant d'obtenir une représentation sous forme de chaine de caractères censée le représenter.

item.SubItems[0].Text = process.Id.ToString();

/*
coq
MVP Visual C#
CoqBlog
*/
3
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
16 nov. 2008 à 15:14
Salut

Avec un syntaxe comme ça ?

item.SubItems[4].Text = process.ProcessorAffinity as String;
ou
item.SubItems[4].Text = process.ProcessorAffinity.ToString();
3
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
16 nov. 2008 à 15:24
J'ai comme un doute pour l'utilisation de l'opérateur "as".

/*
coq
MVP Visual C#
CoqBlog
*/
0
shadow1779 Messages postés 706 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2013
16 nov. 2008 à 15:45
merci beaucoup ^^

Pour le .ToString ca fonctionne, pour le as ca donne encore une autre erreur :s

Erreur    1    Impossible de convertir le type 'int' en 'string' via une conversion de référence, une conversion boxing, une conversion unboxing, une conversion wrapping ou une conversion null type    C:\Users\Shadow\Documents\Visual Studio 2008\Projects\ProcessLinq\ProcessLinq\mainForm.cs    30    41    ProcessLinq
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
xmox667 Messages postés 357 Date d'inscription jeudi 8 juin 2006 Statut Membre Dernière intervention 26 décembre 2011 4
16 nov. 2008 à 17:37
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
16 nov. 2008 à 21:45
Ok
pour le as

Je l'utilise pour  des cast de object --> string exemple lecture de datareader
et pour int --> string il faut utiliser un convertisseur ToString
0
Rejoignez-nous