Saya menggunakan Console.WriteLine () dari aplikasi uji WPF yang sangat sederhana, tetapi ketika saya menjalankan aplikasi dari baris perintah, saya tidak melihat ada yang ditulis ke konsol. Adakah yang tahu apa yang mungkin terjadi di sini?
Saya dapat mereproduksinya dengan membuat aplikasi WPF di VS 2008, dan hanya menambahkan Console.WriteLine ("teks") di mana saja yang dapat dieksekusi. Ada ide?
Yang saya butuhkan saat ini adalah sesuatu yang sederhana seperti Console.WriteLine (). Saya menyadari bahwa saya dapat menggunakan log4net atau solusi logging lainnya, tetapi saya benar-benar tidak membutuhkan banyak fungsi untuk aplikasi ini.
Sunting: Saya harus ingat bahwa Console.WriteLine () adalah untuk aplikasi konsol. Oh baiklah, tidak ada pertanyaan bodoh, bukan? :-) Saya hanya akan menggunakan System.Diagnostics.Trace.WriteLine () dan DebugView untuk saat ini.
Jawaban:
Anda harus membuat jendela Konsol secara manual sebelum Anda benar-benar memanggil metode Console.Write. Itu akan membuat Konsol berfungsi dengan baik tanpa mengubah jenis proyek (yang untuk aplikasi WPF tidak akan berfungsi).
Berikut adalah contoh kode sumber lengkap, tentang bagaimana kelas ConsoleManager akan terlihat, dan bagaimana kelas itu dapat digunakan untuk mengaktifkan / menonaktifkan Konsol, secara independen dari jenis proyek.
Dengan kelas berikut, Anda hanya perlu menulis di
ConsoleManager.Show()
suatu tempat sebelum panggilan keConsole.Write
...sumber
SetConsoleCtrlHandler
fungsi yang memungkinkan untuk diberi tahu ketikaCTRL_CLOSE_EVENT
peristiwa terjadi tetapi Anda tidak dapat melakukan apa pun dengannya, tidak ada yang memungkinkan aplikasi Anda untuk melanjutkan. Anda akan dimatikan. Jika Anda merasa ingin meretas, Anda mungkin dapat menukar penangan pesan windows untuk proses konsol dan hanya menjatuhkan pesan WM_CLOSE, saya belum pernah mencoba ini tetapi itu bisa berhasil. Ini hanya jendela lain tetapi dengan itu berkata, kecuali Anda ingin menghibur ide ini, usaha Anda mungkin lebih baik dihabiskan untuk melakukan sesuatu yang lain.Klik kanan pada proyek, "Properties", tab "Application", ubah "Output Type" menjadi "Console Application", dan kemudian itu juga akan memiliki konsol.
sumber
Kamu bisa memakai
Ini akan menampilkan jendela "Output" di Visual Studio (saat debugging).
pastikan untuk memiliki rakitan Diagnostik yang disertakan:
sumber
Console.WriteLine
itu tidak dimaksudkan untuk aplikasi WPF sama sekali, dan itu dimaksudkan hanya untuk aplikasi baris perintah.Meskipun John Leidegren terus menolak gagasan itu, Brian benar. Saya baru saja membuatnya berfungsi di Visual Studio.
Untuk memperjelas, aplikasi WPF tidak membuat jendela Konsol secara default.
Anda harus membuat Aplikasi WPF dan kemudian mengubah OutputType menjadi "Aplikasi Konsol". Saat Anda menjalankan proyek, Anda akan melihat jendela konsol dengan jendela WPF Anda di depannya.
Ini tidak terlihat sangat cantik, tetapi saya merasa terbantu karena saya ingin aplikasi saya dijalankan dari baris perintah dengan umpan balik di sana, dan kemudian untuk opsi perintah tertentu saya akan menampilkan jendela WPF.
sumber
Mungkin untuk melihat keluaran yang ditujukan untuk konsol dengan menggunakan pengalihan baris perintah .
Sebagai contoh:
akan menulis semua konten ke
output.txt
file.sumber
Posting lama, tetapi saya mengalami ini jadi jika Anda mencoba mengeluarkan sesuatu ke Output dalam proyek WPF di Visual Studio, metode kontemporernya adalah:
Sertakan ini:
Lalu:
sumber
Saya menggunakan Console.WriteLine () untuk digunakan di jendela Output ...
sumber
Saya telah membuat solusi, mencampur informasi dari varius post.
Ini adalah formulir, yang berisi label dan satu kotak teks. Output konsol dialihkan ke kotak teks.
Ada terlalu kelas yang disebut ConsoleView yang mengimplementasikan tiga metode publik: Show (), Close (), dan Release (). Yang terakhir adalah membiarkan konsol terbuka dan mengaktifkan tombol Tutup untuk melihat hasil.
Bentuknya disebut FrmConsole. Berikut adalah kode XAML dan c #.
Penggunaannya sangat sederhana:
Untuk membuka konsol. Menggunakan:
Untuk teks keluaran ke konsol.
Menggunakan:
Untuk Tutup konsol.
Membiarkan konsol terbuka dan mengaktifkan tombol Tutup
XAML
Kode Jendela:
kode kelas ConsoleView
Semoga hasil ini bermanfaat.
sumber
Lihat posting ini, sangat membantu untuk diri saya sendiri. Unduh contoh kode:
http://www.codeproject.com/Articles/335909/Embedding-a-Console-in-aC-Application
sumber
Sejauh yang saya tahu, Console.WriteLine () hanya untuk aplikasi konsol. Saya pikir ini adalah masalah Anda.
sumber