示例#1
0
        private async void Correlation()
        {
            this.Cursor    = Cursors.WaitCursor;
            selectedAssets = new Asset[Program.form.dataGridView2.Rows.Count];
            int j = 0;

            foreach (DataGridViewRow t in Program.form.dataGridView2.Rows)
            {
                Asset a = (Asset)t.Cells[0].Value;
                selectedAssets[j] = a;
                j++;
            }
            string path = Program.path + "cor\\";

            await DownloadTask(selectedAssets, path, Program.form.trackBar_period.Value);

            try
            {
                finalArray = ClassAssistant.ReadData(selectedAssets, path);

                dataGridView.Columns.Add("colName", "Актив");
                for (int i = 0; i < selectedAssets.Length; i++)
                {
                    dataGridView.Columns.Add(selectedAssets[i].Ticker, selectedAssets[i].Name);
                    dataGridView.Rows.Add(selectedAssets[i].Name);
                }
                this.FillTable(finalArray);
                for (int i = 0; i < dataGridView.Columns.Count; i++)
                {
                    dataGridView.Columns[i].Width = 60;
                }
                this.Cursor = Cursors.Default;
            }
            catch (System.IO.IOException ex)
            {
                //Form5_cor_Load(sender, e);
                string[] exception = ex.Message.Split(' ');

                /*   DialogResult dr = MessageBox.Show("Ошибка при считывании файла " + exception[exception.Length - 1] + ". Замените этот актив или попробуйте еще раз.\nПовторить попытку?",
                 *     "Ошибка!", MessageBoxButtons.RetryCancel, MessageBoxIcon.Error);
                 * if (dr == System.Windows.Forms.DialogResult.Retry) Correlation();
                 * else this.Close();
                 */
                count++;
                if (count == 3)
                {
                    DialogResult dr = MessageBox.Show("Ошибка при считывании файла " + exception[exception.Length - 1] + ". Замените этот актив.", "Ошибка!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    count = 0;
                    if (dr == System.Windows.Forms.DialogResult.OK)
                    {
                        this.Close();
                    }
                }
                else
                {
                    Correlation();
                }
            }
            catch (Exception ex)
            {
                string[]     exception = ex.Message.Split(' ');
                DialogResult dr        = MessageBox.Show(ex.Message, "Ошибка!", MessageBoxButtons.RetryCancel, MessageBoxIcon.Error);
                if (dr == System.Windows.Forms.DialogResult.Retry)
                {
                    Correlation();
                }
                else
                {
                    this.Close();
                }
            }
        }