C#の落とし穴 (1): イメージの読み込みでファイルがオープンされたままになる

System.Drawing.ImageクラスのFromFile()メソッドでイメージを読み込むと、そのファイルが開きっぱなしになります。 このため、他のアプリで開こうとした場合などにトラブルになります。以下の例のように、FileStreamを使って読み込めばこの問題を回避できます。
public System.Drawing.Image LoadImageFromFile(string filename)
{
    try
    {
        using (var fs = new FileStream(filename, FileMode.Open, FileAccess.Read))
        {
            return System.Drawing.Image.FromStream(fs);
        }
    }
    catch { }
    return null;
}