public static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, int wParam, ref LVITEM lParam);
/// <summary> /// アイコンのオーバーレイを表示します。 /// </summary> /// <param name="self">アイコンオーバーレイを表示させたい<see cref="System.Windows.Forms.ListViewItem"/></param> /// <param name="overlayIndex">オーバーレイインデックス(開始値 1)</param> public static void Overlay(this ListViewItem self, int overlayIndex) { // ListView_SetItemState(listItem.ListView.Handle, listItem.Index, // overlayIndex << 8, LVIS_OVERLAYMASK); 相当の処理 LVITEM lvi = new LVITEM(); lvi.stateMask = NativeMethods.LVIS_OVERLAYMASK; lvi.state = ((uint)overlayIndex << 8); NativeMethods.SendMessage(self.ListView.Handle, NativeMethods.LVM_SETITEMSTATE, self.Index, ref lvi); }