C# 在窗体之间传递txtBox值
我经常遇到这个问题,我想我需要了解它是如何工作的,我有FormMain(我的主窗体)和第二个窗体(FormAddUrls),当我打开form2(FormAddUrls)时,我想将multitextbox值传递回主窗体(FormMain) 我知道,在VB中,这就像说:FormMain.txtBoxUrls.Text=finalOutput但在C#中没有那么容易 (form1)-FormMainC# 在窗体之间传递txtBox值,c#,C#,我经常遇到这个问题,我想我需要了解它是如何工作的,我有FormMain(我的主窗体)和第二个窗体(FormAddUrls),当我打开form2(FormAddUrls)时,我想将multitextbox值传递回主窗体(FormMain) 我知道,在VB中,这就像说:FormMain.txtBoxUrls.Text=finalOutput但在C#中没有那么容易 (form1)-FormMain using System; using System.Collections.Generic; usin
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Net;
using System.Windows.Forms;
using WraithProjectCreator;
using IronPdf;
using System.Text;
namespace GSAProjectCreator
{
public partial class FormMain : Form
{
private IniParser m_Parser = null;
public FormMain()
{
InitializeComponent();
}
private void btnShowUrlsForm_Click(object sender, EventArgs e)
{
FormAddUrls fau = new FormAddUrls();
fau.Show();
}
}
}
(格式2)-格式URL
using GSAProjectCreator;
using System;
using System.Text;
using System.Windows.Forms;
namespace WraithProjectCreator
{
public partial class FormAddUrls : Form
{
public FormAddUrls()
{
InitializeComponent();
}
private void btnAddUrls_Click(object sender, EventArgs e)
{
StringBuilder builder = new StringBuilder();
builder.Append("{");
foreach (string line in txtBoxURLsMass.Lines)
{
//Helpers.returnMessage(line);
builder.Append(line + "|");
}
builder.Append("}");
string finalOutput = "";
if (builder.ToString().Contains("|}")) {
finalOutput = builder.ToString().Replace("|}", "}");
}
//FormMain.txtBoxUrls.Text = finalOutput;
this.Close();
}
}
}
我已经使用了很多form1的代码来保留基本结构,我正在尝试将finalOutput从form2传回form1(txtBoxUrls.Text)文本框,如果您有任何帮助,我们将不胜感激。这取决于您想如何使用主表单-您可以设置一个静态属性(这将更新所有主窗体实例的文本) 如果您只有一个主窗体,并且在创建FormAddUrls对象时有对它的引用,那么您只需更改构造函数以接受主窗体(或尽可能通用的类型),将引用存储为字段,并在单击按钮时更新其属性:
public partial class FormAddUrls : Form
{
private readonly Form _parentForm;
public FormAddUrls(MainForm parent)
{
_parentForm = parent;
InitializeComponent();
}
private void btnAddUrls_Click(object sender, EventArgs e)
{
StringBuilder builder = new StringBuilder();
builder.Append("{");
foreach (string line in txtBoxURLsMass.Lines)
{
//Helpers.returnMessage(line);
builder.Append(line + "|");
}
builder.Append("}");
string finalOutput = "";
if (builder.ToString().Contains("|}")) {
finalOutput = builder.ToString().Replace("|}", "}");
}
if(_parentForm != null)
_parentForm.txtBoxUrls.Text = finalOutput;
this.Close();
}
}