Qu'est-ce que je fais mal ici?
string tmp = @"
if (UseImageFiles) {
vCalHeader += ""<td><img onmousedown='' src= '{0}cal_fastreverse.gif' width='13px' height='9' onmouseover='changeBorder(this, 0)' onmouseout='changeBorder(this, 1)' style='border:1px solid white'></td>\n""; //Year scroller (decrease 1 year)
calHeight += 22;
}";
string x = "xter";
tmp = string.Format(tmp, x);
Je reçois
La chaîne d'entrée n'était pas au format correct
en essayant de changer {0}
. Je le fais dans C # et WinForms.
Exception de format non gérée
La chaîne d'entrée n'était pas au format correct
Dépannez les astuces que je reçois:
Assurez-vous que les arguments de votre méthode sont au bon format. Lors de la conversion d'une chaîne en date/heure, analysez la chaîne pour extraire la date avant de placer chaque variable dans l'objet DateTime.
string.Format()
considère que chaque '{' ou '}' fait partie d'un espace réservé (comme '{0}' que vous utilisez déjà). Vous devez échapper à chaque occurrence littérale en la doublant.
Alors dans votre cas, faites:
string tmp = @"
if (UseImageFiles) {{
...
}}";