2016-02-20 2 views
0

Я новичок в Visual Studio (2015) и C#, и у меня возникают проблемы с чем-то очень простым. То, что я пытаюсь сделать, - просто протестировать функцию, отобразив некоторый текст, который указывает, что вызвана функция, из которой выполняется эта функция. Я делаю приложение WPF.Показать простую тестовую строку/значение

У меня есть опыт работы с javascript, php и ActionScript 3/Flash, и на всех этих языках легко просто написать строку текста, чтобы увидеть, вызывается ли функция или видят значение переменной; с чем-то вроде trace(), , и т. д.

Однако, проработав достаточно часа, чтобы сделать это на C#, я не могу найти способ сделать это без написания целых блоков кода или написания этого текста на некоторый внешний файл.

Насколько я понимаю, Trace.WriteLine() записывает его содержимое во внешний файл и нуждается в целой группе дополнительных строк кода, чтобы отображать его в другом месте. То же самое для Console.WriteLine(), потому что сначала вам нужно вызвать консоль, которая будет открыта первой.

На данный момент я использую System.Windows.MessageBox.Show("test"), но это не очень удобно по моему мнению. Я не могу себе представить, что нет другого простого способа проследить простую строку или var или что-то еще.

Пожалуйста, помогите этому новичку!

+1

'Debug.WriteLine' https://msdn.microsoft.com/en-us/library/system.diagnostics.debug.writeline(v=vs.110).aspx –

+0

Спасибо, но когда я использую это, я Не видите ли строку в любом месте? – poepje

+0

Вы увидите его в окне вывода Visual Studio. https://msdn.microsoft.com/en-us/library/3hk6fby3.aspx –

ответ

1

То, что вы ищете, может быть получено с помощью Debug.WriteLine.

Он будет отображаться в окне вывода Visual Studio.

+0

Спасибо. Я не понимал, что есть панель, которую я должен был добавить к графическому интерфейсу по умолчанию для Visual Studio. Странно, что его нет по умолчанию. – poepje

+0

p.s. есть ли способ сделать это, не видя вокруг этого строк «ProjectName.vshost.exe (..)»? – poepje

+0

Вы можете щелкнуть правой кнопкой мыши по панели и снять все флажки, кроме 'Program Output', чтобы удалить их. –

0

Вы можете использовать Console.WriteLine() или Debug.WriteLine(). Для более позднего, если вы не видите выход, отметьте это сообщение: Where does System.Diagnostics.Debug.Write output appear?.

Дополнительные примеры для Debug.WriteLine() см.: DotNetPerls-Debug.

+0

Спасибо, но, как я уже упоминал, если вы используете 'Console.WriteLine()', то консоль не открывается автоматически. Этот метод слишком изощрен для простого теста. – poepje

+0

Ничего не выдает всплывающее сообщение, кроме MessageBox.Show() (или аналогичная кодированная реализация). Тем не менее, управляемый отладчик поддерживает условие «когда попадание» на точку останова, что позволяет вам выгружать информацию в окно вывода. Подробнее об этом см .: http: //stackoverflow.com/questions/2912183/how-can-i-trace-a-variable-at-runtime-in-c – NoChance