{\r
}\r
\r
- \r
+\r
/// <summary>\r
/// WindowsVista向け、プログレスバーステータス(色)を設定する\r
/// </summary>\r
\r
#endregion\r
\r
+ #region ListView関連\r
+ \r
+ #region 選択の半透明(コメント)\r
+ /*\r
+ /// <summary>\r
+ /// マウスでの選択に半透明ツールを採用する\r
+ /// </summary>\r
+ /// <param name="listView">対象のリストビュー</param>\r
+ public static void ListView_EnableDoubleBuffer(ListView listView)\r
+ {\r
+ try {\r
+ // SendMessage(listView.Handle, LVM_SETEXTENDEDLISTVIEWSTYLE, LVS_EX_DOUBLEBUFFER, LVS_EX_DOUBLEBUFFER);\r
+ SendMessage(listView.Handle, 0x1036, 0x00010000, 0x00010000);\r
+ } catch (Exception) {\r
+ }\r
+ }\r
+ */\r
+ #endregion\r
+ \r
+ /// <summary>\r
+ /// 選択されたアイテムの部分の背景にグラデーションがかかった感じになる、\r
+ /// Vista以降でのエクスプローラの見た目をListViewに反映させる。\r
+ /// \r
+ /// なお、Vista未満のバージョンでは何もしない。\r
+ /// </summary>\r
+ /// <param name="listView">対象のListView</param>\r
+ public static void ListView_EnableVistaExplorerTheme(ListView listView)\r
+ {\r
+ // Vista未満はなにもしない\r
+ OperatingSystem os = Environment.OSVersion;\r
+ if (os.Platform != PlatformID.Win32NT || os.Version.Major < 6) return;\r
+ \r
+ try {\r
+ SetWindowTheme(listView.Handle, "explorer", null);\r
+ } catch (Exception) {\r
+ }\r
+ }\r
+ \r
#region ColumnHeaderのソートの三角印用\r
\r
[StructLayout(LayoutKind.Sequential, CharSet=CharSet.Auto)]\r
\r
#endregion\r
\r
+ #endregion\r
+ \r
#region EnableWindow(コメントアウト)\r
// /// <summary>\r
// /// 指定されたコントロール(ウィンドウ)への、\r
\r
[DllImport("user32.dll", CharSet=CharSet.Auto)]\r
internal static extern IntPtr SendMessage( IntPtr hWnd, UInt32 Msg, int wParam, ref HD_ITEM lParam);\r
+\r
+ [DllImport("uxtheme.dll", ExactSpelling=true, CharSet=CharSet.Unicode)]\r
+ internal static extern int SetWindowTheme(IntPtr hWnd, String pszSubAppName, String pszSubIdList);\r
}\r
}\r