newPropertyGridを作成し、それをnewTabPageに追加しました。すべてのnewTabPageをlstTankTabPages(ジェネリックコレクション)に保存します。プロパティグリッドでデータが変更されたときにイベントを発生させて、メインフォームのカスタムコントロールを変更したいと思います。私の質問、lstTankTabPagesからすべてのnewPropertyGridを取得する方法は?ありがとうございました。
for (int i = 0; i < Modules.tankQuantity; i++)
{
string name = string.Format("Tank{0}", i + 1);
// create newTabPage
TabPage newTabPage = new TabPage(name);
newTabPage.Name = string.Format("tabPage{0}", name);
// create newPropertyGrid
PropertyGrid newPropertyGrid = new PropertyGrid();
newPropertyGrid.Name = string.Format("propertyGrid{0}", name);
newPropertyGrid.BrowsableAttributes = new AttributeCollection(new DisplayModeAttribute("Ullage,Gross,Netto,Water,Temperature,Density,Capacity,Connection,Appearance"));
newPropertyGrid.SelectedObject = new TankInventoryCustom();
// add newPropertyGrid to newTabPage
newTabPage.Controls.Add(newPropertyGrid);
// add newTabPage to tabControl
this.tabControlTankInventory.TabPages.Add(newTabPage);
// add newTabPage to collection
Modules.lstTankTabPages.Add(newTabPage);
}