Пример #1
0
        /// <summary>
        /// 下载选中的文件。
        /// </summary>
        private void DownLoad()
        {
            btnDownLoad.Enabled = false;

            if (listView1.SelectedItems.Count > 0)
            {
                // 如果选中了项则继续。
                var fileLength = Commons.ToInt32(listView1.SelectedItems[0].Tag.ToString());
                var fileId     = Commons.ToInt64(listView1.SelectedItems[0].SubItems[3].Text.Trim());
                var fileHash   = listView1.SelectedItems[0].SubItems[4].Text.Trim();

                if (fileId != 0L && fileHash.Length != 0)
                {
                    // 如果选中项的文件ID和文件hash合法则继续。
                    string localFileName = "";
                    using (var dlg = new SaveFileDialog()) {
                        dlg.FileName = listView1.SelectedItems[0].Text;
                        if (dlg.ShowDialog(this) == DialogResult.OK)
                        {
                            localFileName = dlg.FileName;
                        }
                    }

                    if (localFileName.Length != 0)
                    {
                        // 如果输入了本地文件的名字则执行下载。
                        using (var dlg = new DownloadFileDlg(fileId, fileHash, localFileName, fileLength)) {
                            dlg.ShowDialog(this);
                        }
                    }
                }
            }

            btnDownLoad.Enabled = true;
        }