private void btnLoadExcel_Click(object sender, EventArgs e)
        {
            if (ofdLoadFromExcel.ShowDialog() == DialogResult.OK)
            {
                var links = ExcelData.GetDataFromExcel(ofdLoadFromExcel.FileName);

                if (dgvPaths.ColumnCount == 0)
                {
                    dgvPaths.ColumnCount     = 1;
                    dgvPaths.Columns[0].Name = "Файлы";



                    DataGridViewCheckBoxColumn checkedImage = new DataGridViewCheckBoxColumn();
                    dgvPaths.Columns.Insert(0, checkedImage);

                    dgvPaths.Columns[1].Width = 300;
                }

                dgvPaths.Rows.Clear();

                foreach (string item in links)
                {
                    string[] row = new string[] { "true", item };
                    dgvPaths.Rows.Add(row);
                }

                if (links.Count > 0)
                {
                    images = new ImageCollection(links);
                }
            }
        }
        private void btnUpload_Click(object sender, EventArgs e)
        {
            List <bool>   checkedList = new List <bool>();
            List <string> linkList    = new List <string>();

            foreach (DataGridViewRow dr in dgvPaths.Rows)
            {
                if (Convert.ToBoolean(dr.Cells[0].Value))
                {
                    checkedList.Add(true);

                    Bitmap image = Converter.GetWatermarkedImage(
                        images[dr.Cells[1].RowIndex],
                        int.Parse(txtWidth.Text),
                        int.Parse(txtNewHeight.Text),
                        new Bitmap(Environment.CurrentDirectory + @"\water.png"));

                    bool isSended = SendToFtp(
                        image,
                        Properties.Settings.Default.FtpPath,
                        Path.GetFileName((string)dr.Cells[1].Value),
                        Properties.Settings.Default.FtpName,
                        Properties.Settings.Default.FtpPassword);



                    if (!isSended)
                    {
                        MessageBox.Show("Не удалось загрузить файл " + (string)dr.Cells[1].Value);

                        linkList.Add(null);
                    }
                    else
                    {
                        linkList.Add(String.Format("{0}docs/{1}", Properties.Settings.Default.FtpPath, Path.GetFileName((string)dr.Cells[1].Value)).Replace("ftp://", "http://"));
                    }
                }
                else
                {
                    checkedList.Add(false);
                    linkList.Add(null);
                }
            }
            MessageBox.Show("Загрузка завершена");

            if (MessageBox.Show("Сохранить пути к картинкам в Excel-файл?", "Сохранение в Excel", MessageBoxButtons.YesNo) == DialogResult.Yes)
            {
                ExcelData.SaveDataToExcel(checkedList, linkList);
            }
        }