string.Format () giving “La cadena de entrada no está en el formato correcto”

¿Qué hago mal aquí?

string tmp = @" if (UseImageFiles) { vCalHeader += ""\n""; //Year scroller (decrease 1 year) calHeight += 22; }"; string x = "xter"; tmp = string.Format(tmp, x); 

yo obtengo

La cadena de entrada no estaba en el formato correcto

cuando intentas cambiar {0} . Estoy haciendo esto en C # y WinForms.

Format Exception no fue manejado
La cadena de entrada no estaba en el formato correcto

Solucionar los problemas que recibo:

Asegúrese de que los argumentos de su método estén en el formato correcto. Al convertir una cadena a datetime, analice la cadena para sacar la fecha antes de poner cada variable en el objeto DateTime.

string.Format() considera que cada ‘{‘ o ‘}’ forma parte de un marcador de posición (como ‘{0}’ que ya usa). Necesitas escapar cada ocurrencia literal doblándola.

Entonces en tu caso hazlo

  string tmp = @" if (UseImageFiles) {{ ... }}";