如何从另一个表单 C# 中获取字符串的值
本文关键字:获取 字符串 另一个 表单 | 更新日期: 2023-09-27 18:30:49
当我从另一个形式调用字符串时,字符串是一个空字符串。
(Messenger) Form 2:
Facebook mainlist = new Facebook();
if (!(iurl == mainlist.currentstring))
{
iurl = mainlist.currestring; //Update the string
MessageBox.Show("success!");
}
(Facebook) Form 1:
public string currentstring{ get; set; }
信息:
我正在使用 CEF3,在我的表单 1 中,我的应用程序会自动获取当前网址
private void OnBrowserAddressChanged(object sender, AddressChangedEventArgs args)
{
currenturl.Text = args.Address;
thistring = args.Address;
}
当当前网址的某个文本被更改时,这将打开一个新的表单(信使)
currenturl.TextChanged += (s, e) =>
{
currentinbox = currenturl.Text;
MessageBox.Show(currentinbox + " = " + currenturl.Text);
if ((currenturl.Text.Contains("https://www.messenger.com/t/") == true) & (currenturl.Text.Contains("https://www.messenger.com/t/me/") == false))
{
Process[] pname = Process.GetProcessesByName("Facebook");
if (!(pname.Length == 3))
{
Messenger inbox = new Messenger();
inbox.iurl = currenturl.Text;
inbox.Show();
browser.Back();
}
}
};
然后在我的Form2(信使)中自动启用计时器。
private void DetectUrl_Tick(object sender, EventArgs e)
{
Facebook mainlist = new Facebook();
if (!(iurl == mainlist.currentinbox))
{
string inboxme = "var els = document.getElementsByTagName('"a'");" +
"for (var i = 0, l = els.length; i < l; i++) {" +
"var el = els[i];" +
"if (el.href === '"https://www.messenger.com/t/'"" + mainlist.currentinbox + "'") {" +
"el.click();" +
"}" +
"}";
iurl = mainlist.currentinbox;
MessageBox.Show(iurl + " = " + mainlist.currentinbox);
browser.ExecuteScriptAsync(inboxme);
}
}
但是"mainlist.currentinbox"是空的或空的字符串
Form1:
private void label1_Click(object sender, EventArgs e)
{
Form2 n = new Form2();
label1.Text = n.lol;
}
表格2:
public string lol = "xd";
它目前有效吗?也许您在示例中没有为thistring变量分配任何内容?