Scrivere una stringa nella stessa posizione usando Console.Write in C # 2.0

Ho un progetto di applicazione di console in C # 2.0 che ha bisogno di scrivere qualcosa sullo schermo in un ciclo while. Non voglio che lo schermo scorra perché utilizzando Console.Write o Console.Writeline, il metodo continuerà a visualizzare il testo sullo schermo della console in modo incrementale e quindi inizierà lo scorrimento.

Voglio che la stringa sia scritta nella stessa posizione. Come posso fare questo?

Grazie

Utilizzare Console.SetCursorPosition per impostare la posizione. Se è necessario prima determinarlo, utilizzare le proprietà Console.CursorLeft e Console.CursorTop .

Funzione per scrivere il progresso di un ciclo. Il tuo contatore di loop può essere utilizzato come parametro di posizione x. Questo stampa sulla riga 1, modifica per le tue esigenze.

  ///  /// Writes a string at the x position, y position = 1; /// Tries to catch all exceptions, will not throw any exceptions. ///  /// String to print usually "*" or "@" /// The x postion, This is modulo divided by the window.width, /// which allows large numbers, ie feel free to call with large loop counters protected static void WriteProgress(string s, int x) { int origRow = Console.CursorTop; int origCol = Console.CursorLeft; // Console.WindowWidth = 10; // this works. int width = Console.WindowWidth; x = x % width; try { Console.SetCursorPosition(x, 1); Console.Write(s); } catch (ArgumentOutOfRangeException e) { } finally { try { Console.SetCursorPosition(origRow, origCol); } catch (ArgumentOutOfRangeException e) { } } }