Linq.Tables(dc.GTMD_Financials)のデータをUserControlに追加するコードを少し作成しました。データベース内のすべてのエントリに対して、新しいusercontrolが表示されます。メソッド内の複数のLinq.Tables
しかし、このコードをアプリケーション全体で再利用する方法で使用したいと思います。私の問題は、私がメソッドを呼び出すたびにデータベースから別のテーブルを使用したいので(GTMD_Financialsが変わるので)
私はそれを理解することはできないと思います。
int locationControl = 78;
DataClasses1DataContext dc = new DataClasses1DataContext();
dc.GTMD_Financials.ToList().ForEach(x =>
{
KPIEntrys uc = new KPIEntrys(); // UserControl
uc.KPI = x.KPI; // Add data to properties
uc.Status = x.Status.ToString();
uc.Goal = x.Goal.ToString();
uc.Currently = x.Currently.ToString();
bool checkaction = x.ShowAction == true ? uc.ShowAction = true : uc.ShowAction = false;
bool checkstats = x.ShowStats == true ? uc.ShowStats = true : uc.ShowStats = false;
bool checkstatus = x.Status < x.StatusSignal ? uc.StatusGood = true : uc.StatusGood = false;
uc.Location = new Point(21, locationControl);
this.Controls.Add(uc); // Add Control to Form
locationControl = locationControl + 34;
}
);
何か不明な点がありましたらお知らせください。 ご協力いただきありがとうございます。
編集:私はそれは私がすでに持って助けを借りて作業し得るように見えることはできません
。私は私がすでに持っreplysからの助けを借りて方法を少し編集することができました:
int locationControl = 78;
DataClasses1DataContext dc = new DataClasses1DataContext();
public List<Control> LoadKPIs(Table<GTMD_Financial> dbTable)
{
var controls = new List<Control>();
dbTable.ToList().ForEach(x =>
{
KPIEntrys uc = new KPIEntrys();
uc.KPI = x.KPI;
uc.Status = x.Status.ToString();
uc.Goal = x.Goal.ToString();
uc.Currently = x.Currently.ToString();
uc.ShowAction = (bool)x.ShowAction;
uc.ShowStats = (bool)x.ShowStats;
uc.StatusGood = x.Status < x.StatusSignal;
uc.Location = new Point(21, locationControl);
controls.Add(uc);
locationControl = locationControl + 34;
}
);
return controls;
}
だから私は私の質問を言い換えるてみましょう:私は、メソッドを呼び出したときにどのように私は、クラスを変更することができますLoadKPIs(表< GTMD_Financial> DBTABLE?だから、GTMD_Finacial変更。
?あなたが再利用できる作品と再利用できない作品があります。再利用可能なメソッドを作成する場合は、そのことについて非常に明確にする必要があります。それは実際に何をしていますか? – Maarten
"dc.GTMD_Financials"だけが変更されます。次回は、 "dc.GTMD_Organisation"(または別のもの)を使用したいと思っています – Marcel
あなたが必要とするのは、dc.GTMD_Financialsの代わりにこのメソッドに現在必要なテーブルを取得することだけです。 –