WP7 Conversion string / double

Résolu
jihednond Messages postés 143 Date d'inscription jeudi 27 mars 2008 Statut Membre Dernière intervention 3 septembre 2011 - 23 juin 2011 à 13:48
jihednond Messages postés 143 Date d'inscription jeudi 27 mars 2008 Statut Membre Dernière intervention 3 septembre 2011 - 23 juin 2011 à 17:08
Je suis actuellement entrain de développer une application pour Windows Phone 7 (C#)qui consiste à lire à partir d'un fichier xml la latitude et la longitude d'un certain nombre de personnes (voir "loc.xml") et de les afficher sur un Bing Map .

Le problème consiste à ce que la conversion string / double n'a pas fonctionner

Aidez- moi à trouver une solution SVP

4 réponses

MasterShadows Messages postés 268 Date d'inscription lundi 1 mars 2004 Statut Membre Dernière intervention 19 avril 2012 12
23 juin 2011 à 16:44
Salut, la méthode TryParse fait exactement ce que tu souhaites; elle est définie ainsi :

bool TryParse(string value, out double result);


ou

bool TryParse(string value, NumberStyles style, IFormatProvider i, out double result);


Donc dans ton cas, tu vas écrire :

double lon;
double.TryParse(Longitude, NumberStyles.Any, CultureInfo.InvariantCulture, out lon);


Et boum, ça fonctionnera ...
3
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
23 juin 2011 à 14:30
Hello,

As-tu regardé du coté de la méthode static TryParse de Double ?


Sébastien FERRAND
Ingénieur Concepteur Senior
Microsoft Visual C# MVP 2004 - 2009
Blog Photo
0
jihednond Messages postés 143 Date d'inscription jeudi 27 mars 2008 Statut Membre Dernière intervention 3 septembre 2011 1
23 juin 2011 à 16:23
La méthode static TryParse de Double ne retourne pas la valeur double , j'ai besoin de la valeur pour pouvoir l'utiliser dans le reste de mon code.

loc.xml

<location>

<name>Martin Dubois</name>
markers/33.png


<latitude>10.103989</latitude>
<longitude>36.830172</longitude>
<timing>Il y a 3 mois</timing>



WP7 code:

while (wkreader.Read())
{
if (wkreader.NodeType == XmlNodeType.Element)
{
if (wkreader.Name == "name")
{
Name = wkreader.ReadElementContentAsString();

}
if (wkreader.Name == "photo")
{
Photo = wkreader.ReadElementContentAsString();
}
if (wkreader.Name == "latitude")
{
Latitude = wkreader.ReadElementContentAsString();
}
if (wkreader.Name == "longitude")
{
Longitude = wkreader.ReadElementContentAsString();
}

if (wkreader.Name == "timing")
{
Timing = wkreader.ReadElementContentAsString();
}

double lat = Convert.ToDouble(Latitude);
double lon = Double.Parse(Longitude);
GeoCoordinate Loc = new GeoCoordinate(lat, lon);

Pushpin wkpin = new Pushpin();
Image wkpinImage = new Image();
wkpinImage.Source = new System.Windows.Media.Imaging.BitmapImage(new Uri("http://..."+ Photo,UriKind.Absolute));
wkpinImage.Opacity = 0.8;
wkpinImage.Stretch = System.Windows.Media.Stretch.None;

imageLayer.AddChild(wkpinImage, Loc);
map1.Children.Add(wkpin);
0
jihednond Messages postés 143 Date d'inscription jeudi 27 mars 2008 Statut Membre Dernière intervention 3 septembre 2011 1
23 juin 2011 à 17:08
merci infiniment ça fonctionne
0
Rejoignez-nous