baidu_31872285 2017-06-08 08:21 采纳率: 50%
浏览 1918

c#如何跨窗体调用非静态函数,获取另外窗体的textbox值?

form1代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;
using WeifenLuo.WinFormsUI.Docking;

namespace KCTan
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

    private void button1_Click(object sender, EventArgs e)
    {
        Form2.GetModel();
        textBox1.Text = Form2.str;
    }

    private void Form1_Load(object sender, EventArgs e)
    {
        Form2 f2 = new Form2();
        f2.Show(dockPanel1);
        f2.DockTo(dockPanel1, DockStyle.Fill);
    }







}

}
#form2代码
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using WeifenLuo.WinFormsUI.Docking;

namespace KCTan
{

public partial class Form2 : DockContent
{
    public Form2()
    {
            InitializeComponent();         
    }

    public static String str = "";  //在窗体类里定义静态变量

    public void GetValue()
    {
        str = textBox1.Text;
    }
    public static void GetModel()
    {
        Form2 GM = new Form2();
        GM.GetValue();
    }

}

}
![图片说明](https://img-ask.csdn.net/upload/201706/08/1496909936_42054.png)图片说明

  • 写回答

3条回答

  • 风平-浪静 2017-06-08 08:29
    关注

    窗体二里面定义一个Action, public Action callBack;窗体一调用窗体二的时候使用此回调函数并且返回string值。

    评论

报告相同问题?

悬赏问题

  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 有没有帮写代码做实验仿真的
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥30 vmware exsi重置后登不上
  • ¥15 易盾点选的cb参数怎么解啊
  • ¥15 MATLAB运行显示错误,如何解决?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题
  • ¥20 yolov5自定义Prune报错,如何解决?