首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

C#跨线程的参数传递有关问题

2012-03-11 
C#跨线程的参数传递问题以下是一个跨线程访问可视化控件的窗体代码,其实现过程是点击按钮后,label中显示te

C#跨线程的参数传递问题
以下是一个跨线程访问可视化控件的窗体代码,其实现过程是点击按钮后,label中显示textbox中输入的信息:
  public delegate void SetLabelTextDelegate(string info);//根据访问函数自定义一个委托类型
  public partial class Form1 : Form
  {
  SetLabelTextDelegate del;
  public Form1()
  {
  //定义一个委托字段并初始化
  InitializeComponent();
  del = SetLabelText;
  }
  //访问Label控件的方法
  private void SetLabelText(string info)
  {
  lblInfo.Text = info;
  }
  //线程函数
  private void ThreadMethod(Object info)
  {
  lblInfo.Invoke(del, new object[] { info });
  }
  //点击按钮,创建线程,并启动它
  private void btnVisitLabel_Click(object sender, EventArgs e)
  {
  Thread th = new Thread(ThreadMethod);
  th.Start(txtUserInput.Text);
  }
问题:线程函数中的参数类型为object数组,而委托函数的参数类型为string,二者是怎样实现转换的?麻烦各位指教,谢谢!

[解决办法]
Object 有 ToString 方法

热点排行