Скачивалка музыки из контакта. Продолжение.

29.03.2013 at 08:54

Доработал программу для скачивания музыки, добавил возможность выбирать скачиваемые треки.

DeeVKMusicDownloader

В процессе наткнулся на досадный баг: в Windows 7 при даблклике на чекбокс, его состояние меняется, но события не генерируются. Гугл выдал такое решение:

  public class NewTreeView : TreeView
  {
    protected override void WndProc(ref Message m)
    {
      if (m.Msg == 0x203)
        m.Result = IntPtr.Zero;
      else
        base.WndProc(ref m);
    }
  }

Этот код просто гасит даблклик на TreeView. События не генерируются, но и галочки не скачут.
Я его немного доработал:

  public class NewTreeView : TreeView
  {
    protected override void WndProc(ref Message m)
    {
      if ((m.Msg == 0x203) && (this.HitTest(this.PointToClient(Cursor.Position)).Location == TreeViewHitTestLocations.StateImage))
        m.Result = IntPtr.Zero;
      else
        base.WndProc(ref m);
    }
  }

Теперь даблклик на надписи разворачивает/сворачивает его.



На обновления блога теперь можно подписаться Вконтакте