代雹型码:
using System
using System.Collections.Generic
using System.ComponentModel
using System.Data
using System.Drawing
using System.Text
using System.Windows.Forms
using System.Diagnostics
using System.IO
namespace WindowsApplication1
{
public partial class Form1 : Form
{
private Process _process
private StreamWriter _writer
private MethodInvoker _methodInvoker
private string _currentOutput
public Form1()
{
InitializeComponent()
_currentOutput = string.Empty
_methodInvoker = new MethodInvoker( ShowOutput )
_process = new Process()
_process.OutputDataReceived += new DataReceivedEventHandler( _process_OutputDataReceived )
}
void _process_OutputDataReceived( object sender, DataReceivedEventArgs e )
{
_currentOutput = e.Data
BeginInvoke( _methodInvoker )
}
private void ShowOutput()
{
txtOutput.Text += _currentOutput + "\r\n"
}
private void btnStart_Click( object sender, EventArgs e )
{
try
{
StartProcess()
btnStart.Enabled = false
}
catch( Exception ex )
{
MessageBox.Show( ex.ToString() )
}
}
private void btnOK_Click( object sender, EventArgs e )
{
if (_writer != null)
{
_writer.WriteLine(txtInput.Text)
}
}
private void StartProcess()
{
ProcessStartInfo psi = new ProcessStartInfo( @"\bin\debug\Console.exe" )
psi.CreateNoWindow = true
psi.RedirectStandardInput = true
psi.RedirectStandardOutput = true
psi.UseShellExecute = false
_process.StartInfo = psi
_process.Start()
_writer = _process.StandardInput
_process.BeginOutputReadLine()
}
}
}
C# Winform里面用Console.WriteLine输出也不会报错,是设置错误造成的,解决方法如下:
1、首先打开vs2015,点击文件-新建-项目。
2、d出框默认是c#,选择Windows窗体应用程序,给程序起名为MyfirstProgramm。
3、点击确定后,可以在vs2015看见目前已经建立好的winform程序。现在为它加个小功能,增加一个button,察答点击buttond出消息框。
4、双击上图的button按钮,就进入到代码界面。蚂启光标会自动定位到代码里。程序已经自动给这个button增加了个鼠标点击事件函数button1_Click。只要点击鼠标,就会触动这个函数里面的代码。
5、最后直接按F5运行程序,运行出来的界面点击button,就会d出消息框闷没如。
Console.WriteLine应用在console application中, 功能类似于winform的MessageBox
Console.WriteLine的功能是写一行, 与Console.WriteLine对应的还有Console.ReadLine,意思是读取行, 两个连在一块使用示例:
Console.WriteLine("请输入一个整数:") 芹尘山int i=Convert.ToInt32(Console.ReadLine()) 兄毁//读取输入值
Console.WriteLine("您输入的整数为"+i.ToString())
Console.ReadLine() //这里的作用是防止输出对话框闪退,可嫌中以去掉对比下
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)