2012-01-09 2 views
2

У меня было приложение Winforms с атрибутом propertyGrid, позволяющее пользователю редактировать его настройки.
Как достичь той же цели в консольном приложении?Приложение для консоли C# - изменение пользовательских настроек во время выполнения

ANSWER
Спасибо тем, кто ответил. Вот синтетический код, основанный на нескольких ответов:

Console.WriteLine("Choose user settings to setup"); 
Console.WriteLine("User setting1: press 1"); 
Console.WriteLine("User setting2: press 2"); 

string line = Console.ReadLine(); 
int code = int.Parse(line); 
swicth(code) 
{ 
    case 1: 
    Settings.Default.MyProperty = line ; 
    Settings.Default.Save(); 
    break; 

    case 2: 
    ... 
} 
+0

@mizipzor: http://msdn.microsoft.com/en-us/library/aa302326.aspx –

+2

DOWNVOTING БЕЗ КОММЕНТАРИЕВ тааак LAAAAAAAAAAAAME: - (((((((((( –

+0

я предположил бы, что начальные downvotes были из-за довольно неопределенного начального вопроса. Я хочу указать, что, хотя вы получили свой ответ, а downvotes были сбалансированы, я предлагаю отредактировать ваш вопрос, теряя самообладание во всех шапках, никогда не бывает хорошим. – Mizipzor

ответ

3
Settings.Default.MyProperty1 = "some value"; 
Settings.Default.MyProperty2 = 2; 
Settings.Default.Save(); 
+1

Да, спасибо за поддержку, это трюк. После того, как меня унизили вниз, я узнал это сам. –

2

Вы должны запрашивать пользователя о настройках пользователя. Что-то вроде этого:

Console.WriteLine("Choose user settings to setup"); 
Console.WriteLine("User setting1: press 1"); 
Console.WriteLine("User setting2: press 2"); 
.... 
... 
string line = Console.ReadLine(); 
int code = int.Parse(line); 
swicth(code) 
{ 
    case 1: 
    .... 
    ..... 
    case 2: 
} 

После сохранения изменений в файле XML.

Если это не, вы просите, пожалуйста, уточните.

+0

Благодарим за помощь –

2

Консольные приложения по определению не имеют пользовательского интерфейса (хотя вы можете принудительно отображать Windows Forms). Вам нужно переосмыслить свое решение. Возможно, вы хотите использовать app.config (XYZ.exe.config) или отдельный файл конфигурации. BTW, вы можете редактировать файл настроек приложения из кода.

+0

Пока я спорю о консоли приложения ", не имеющие пользовательского интерфейса" (на самом деле они делают: консоль!). +1, предлагая вместо этого использовать конфигурационный файл, которого обычно достаточно для консольного приложения (по крайней мере, для начала-процесса-выхода). –

+0

Знаю, что спасибо за точность. Меня не волнует, что такое дефолт, я целеустремлен, и я делаю все, что нужно для его достижения и думаю из коробки. Я НЕ хочу использовать отдельный файл, который нужно отредактировать, и после некоторого умного способа заставить пользователя редактировать все настройки без необходимости делать это один за другим (см. Править). Во всяком случае, забудь об этом ... Ты знаешь. –

Смежные вопросы