Тема: C# передача в подію поточного індексу list<>
Створив клас для певних даних:
namespace Circle_Detect
{
    class measureData
    {
        public float    D;
        public float    F;
        public float    K;
        public int Q;
        public measureData(float d, float f)
        {
            D = d;
            F = f;
            K = f / (float) (Math.Pow(d, 2));
            if (d == 10)
            { Q = 20; }
            else if (d == 5)
            { Q = 10; }
            else if (d == 2.5f)
            { Q = 5; }
            else if (d == 2)
            { Q = 4; }
            else if (d == 1)
            { Q = 5; } 
        }
    }
}Далі оголосив список об'єктів:
List<measureData> listMD = new List<measureData>();Далі додав об'єктів до списку з даними:
listMD.Add(new measureData(10, 3000));
listMD.Add(new measureData(5, 1000));
listMD.Add(new measureData(3, 500));
listMD.Add(new measureData(2, 100));
listMD.Add(new measureData(1, 50));Далі сформував пункти меню зі списку і обробники подій в циклі:
foreach (measureData menuData in listMD)
{
    string strMenu = String.Format("{0}, {1} ", menuData.D, menuData.F);
    ToolStripMenuItem newItem = new ToolStripMenuItem(strMenu) { CheckOnClick = true, Checked = false };
    newItem.Click += newItem_Click;
    listMDMenu.DropDownItems.Add(newItem);
}Далі хочу в обробнику подій побачити всі данні з класу measureData з індексом списку listMD, що б індекс списку відповідав індексу меню який викликав подію. Зараз там стоїть індекс нуль, просто так для прикладу.
void newItem_Click(object sender, EventArgs e)
{
    string strMsg = String.Format("{0}, {1}, {2}, {3}",listMD[0].D , listMD[0].F, listMD[0].K, listMD[0].Q);
    MessageBox.Show(strMsg);
}Як бути?