سلام
در کد زیر مشکلم این هست که وقتی در CheckedListBox ، آیتمی تیک میخوره بعد از 20 ثانیه اون آیتم در نظر گرفته میشه و Button مربوط به اون ساخته میشه
هر کدی هم براش نوشتم موفق نشدم طوری بنویسم که به محض تیک خوردن یک آیتم ، برنامه همون موقع اون آیتم رو در نظر بگیره و 20 ثانیه تاخیر تایمر منظور نشه
ممنون میشم راهنمایی کنید
در کد زیر مشکلم این هست که وقتی در CheckedListBox ، آیتمی تیک میخوره بعد از 20 ثانیه اون آیتم در نظر گرفته میشه و Button مربوط به اون ساخته میشه
هر کدی هم براش نوشتم موفق نشدم طوری بنویسم که به محض تیک خوردن یک آیتم ، برنامه همون موقع اون آیتم رو در نظر بگیره و 20 ثانیه تاخیر تایمر منظور نشه
ممنون میشم راهنمایی کنید
کد:
var TSN = new System.Windows.Forms.Timer();
TSN.Enabled = true;
TSN.Interval = 1
TSN.Tick += (s, n) =>
{
_f1.flowLayoutPanel1.Controls.Clear();
var TCLB1 = _f1.checkedListBox2.CheckedItems.Cast<TimeFrame>().ToArray();
TSN.Interval =20000
foreach (var SN in symbolNames)
{
foreach (var TFFF in TTT)
{
#region PDH1
var PDH1 = MarketData.GetBars(TFFF, SN);
var hi = PDH1.HighPrices;
var lo = PDH1.LowPrices;
var cl = PDH1.ClosePrices;
sma50TF2 = Indicators.SimpleMovingAverage(cl, 50);
#endregion PDH1
{
if (cl.Last(1) > sma50TF2.Result.Last(1) && ((lo.Last(2) < lo.Last(3) && lo.Last(2) < lo.Last(4) && lo.Last(2) < lo.Last(5) && lo.Last(2) < lo.Last(6) && lo.Last(2) < lo.Last(7)) || (lo.Last(1) < lo.Last(2) && lo.Last(1) < lo.Last(3) && lo.Last(1) < lo.Last(4) && lo.Last(1) < lo.Last(5) && lo.Last(1) < lo.Last(6))))
{
SCUTF2 = true;
CL = System.Drawing.Color.Blue;
}
else if (cl.Last(1) < sma50TF2.Result.Last(1) && ((hi.Last(2) > hi.Last(3) && hi.Last(2) > hi.Last(4) && hi.Last(2) > hi.Last(5) && hi.Last(2) > hi.Last(6) && hi.Last(2) > hi.Last(7)) || (hi.Last(1) > hi.Last(2) && hi.Last(1) > hi.Last(3) && hi.Last(1) > hi.Last(4) && hi.Last(1) > hi.Last(5) && hi.Last(1) > hi.Last(6))))
{
SCUTF2 = true;
CL = System.Drawing.Color.Red;
}
else
{
SCUTF2 = false;
CL = System.Drawing.Color.Empty;
}
}
if (SCUTF2 == true)
{
#region BTN1
foreach (var tc in TCLB1)
{
var BTN1 = new System.Windows.Forms.Button();
BTN1.Text = SN + " " + TT.ToString();
BTN1.ForeColor = CL;
BTN1.AutoSize = true;
BTN1.AutoSizeMode = AutoSizeMode.GrowAndShrink;
BTN1.FlatStyle = FlatStyle.Flat;
BTN1.Visible = (TFFF == tc);
_f1.flowLayoutPanel1.Controls.Add(BTN1);
{
if (SN == SymbolName && TFFF == TimeFrame)
BTN1.Enabled = false;
else
BTN1.Enabled = true;
}
BTN1.Click += (x, y) => { Chart.TryChangeTimeFrameAndSymbol(TFFF, SN); };
if (BTN1.Enabled == false)
BTN1.BackColor = System.Drawing.Color.LightGreen;
}
#endregion BTN1
}
}
}
};