У меня есть приложение с графическим интерфейсом Как использовать функцию в другом классе C#
я поставил функцию checkproxy() в Form1.cs он работает правильно, и я хочу переместить функцию checkproxy() в другой класс, но если я ставлю checkproxy() в другом классе это будет ошибка с Invoke и richTextBox3
namespace test3
{
public partial class Form1 : Form
{
public bool continueThreads = false;
string[] proxyList = null;
List<Thread> threadList = new List<Thread>();
int proxynum = 0;
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
int n = (int)numericUpDown1.Value;
Thread[] tl = new Thread[n + 1];
threadList = tl.ToList();
for (int i = 0; i <= n; i++)
{
threadList[i] = new Thread(new ThreadStart(checkproxy));
}
for (int i = 0; i <= n; i++)
{
threadList[i].Start();
}
continueThreads = true;
proxyList = richTextBox1.Lines;
}
public void checkproxy()
{
while (continueThreads)
{
if (proxynum >= proxyList.Length)
{
continueThreads = false;
}
if (proxynum < proxyList.Length)
{
string proxy = proxyList[proxynum];
proxynum += 1;
string info = "";
try
{
Thread.Sleep(1000);
info += "Live || " + proxy + Environment.NewLine;
this.Invoke(new Action(() => richTextBox3.Text += info));
}
catch
{
}
}
}
}
}
}
'будет ошибка с Invoke и richTextBox3' Затем реорганизуйте свой код, переместите этот код на какую-нибудь другую функцию и верните значение' checkproxy'. – EZI
не могли бы вы опубликовать снимок экрана об ошибке, я не понял, что происходит не так. –
Каково отношение нового местоположения к старому? Это звучит как некоторые проблемы с видимостью. – leigero