読者です 読者をやめる 読者になる 読者になる

C#メモ

C#でツールを作ったときに調べたことのメモです。

フォルダ選択

FolderBrowserDialog fbd = new FolderBrowserDialog();
fbd.Description = "保存するフォルダを選択してください。";
if (fbd.ShowDialog(this) == DialogResult.OK)
{
   this._outputDir = fbd.SelectedPath;
}

画像のダウンロード

WebClient req = new WebClient();
byte[] data = req.DownloadData(imageURL);
if (data != null)
{
     ImageConverter imgconv = new ImageConverter();
     Image img = (Image)imgconv.ConvertForm(data);

     img.Save(fileName, System.Drawing.Imaging.ImageFormat.Jpen);
     img.Dispose();
}

ディレクトリの有無の確認と作成

if (!Directory.Exists(outputDir))
{
     Directory.CreateDirectory(outputDir);
}

スレッドセーフにフォームに値を入力

if (this.TEXTFIELD.InvokeRequired)
{
     SetTextCallback d = new SetTextCallback(callBackFunctionName);
     this.Invoked(d, new object[] { args });
} else {
     this.TEXTFIELD.Text = args;
}

関連書籍

.NETフレームワークのためのC#システムプログラミング―Visual Studio2008対応

.NETフレームワークのためのC#システムプログラミング―Visual Studio2008対応


マルチスレッドに関する部分で参照しました。