バックグラウンドワーカーに送信できるように、ネストされたクラスを使用して 2 つのクラスを 1 つの引数に渡そうとしています。これまでのところ、単一の引数をバックグラウンドワーカーに渡すことができましたが、ネストされたクラスではまだそれを行っていません。そこでは、両方または目的のクラスを同じ引数に渡します。これまでのところ、私が使用しているコードの一部を次に示します。
これは私が使用しようとしているネストされたクラスです:
public class MyBackGroundWorkerObject
{
public class TimeZone
{
public string Zone;
public int difference;
public override string ToString()
{
return Zone;
}
}
public class AccountName
{
public string AccountSid;
public string AuthToken;
public string Name;
public override string ToString()
{
return Name;
}
}
}
動作中のクラスの 1 つの例を次に示します。
MyBackGroundWorkerObject.AccountName acct = new MyBackGroundWorkerObject.AccountName();
//AccountName acct = new AccountName();
acct.AccountSid = "abcd";
acct.AuthToken = "xyz";
acct.Name = "Potato";
ddlAccounts.Items.Add(acct);
MyBackGroundWorkerObject.TimeZone region = new MyBackGroundWorkerObject.TimeZone();
//TimeZone region = new TimeZone();
region.Zone = "UTC";
region.difference = 0;
comboBox1.Items.Add(region);
入力されたデータの一部を取得するウィンドウのフォームから呼び出すときに、これらの両方を使用できるようにしたいと思います。これらのクラスの両方を組み合わせて動作させる方法がわかりません。両方を同時にバックグラウンドワーカーに送信できます。
MyBackGroundWorkerObject myBackGroundWorker1 = new MyBackGroundWorkerObject();
object obj = ddlAccounts.SelectedItem;
MyBackGroundWorkerObject.AccountName acct = obj as MyBackGroundWorkerObject.AccountName;
backgroundWorker1.RunWorkerAsync(acct);