Существует два основных подхода, хотя я не уверен, к какой цели вы стремитесь:
Если вы хотите иметь фактическое командное окно в вашем приложении:
- Создать текстовое поле. Пусть они набирают все, что хотят.
- Когда пользователь нажимает клавишу ВВОД, прочитайте текущую строку и используйте классы System.Diagnostic.Process, чтобы выполнить эту строку и получить полученный текст.
- Показать полученный текст в вашем текстовом поле.
- Необязательно: не допускайте, чтобы текстовое поле становилось слишком большим, выбрасывая линии сверху, когда оно становилось слишком большим.
Если вы хотите просто создать собственное окно обработки команд:
- Найдите способ разбора ввода и предоставления синтаксических ошибок.
- Создайте объектную модель, соответствующую функциям, которые ваше приложение сделает доступными для вашей консоли.
- Подключите анализатор / интерпретатор к вашей объектной модели.