Как создать удобный для управления запасами Windows Mobile 6.5.x? - PullRequest
2 голосов
/ 25 октября 2010

Я занимаюсь разработкой приложения для Windows Mobile на C # с использованием .NET Compact Framework 3.5.Моя целевая версия WM - 6.5.x.У меня сложилось впечатление, что Microsoft обновила элементы управления запасами в этом выпуске ОС, чтобы сделать их более удобными (большие шрифты, большее пространство между строками в списках и т. Д.), Но при создании, например, элемента управления ListBoxвыглядит так же, как и в предыдущих версиях ОС (стилус-дружественный).

Нужно ли обновлять стиль элементов управления, чтобы воспользоваться преимуществами этих новых удобных для пальцев элементов управления запасами?Однако я не могу найти никакой документации по этому вопросу.Или я неправильно понял;возможно в WM 6.5.x нет новых элементов управления?

1 Ответ

2 голосов
/ 25 октября 2010

Вы можете получить "новый" рендеринг элемента представления списка, отправив представление списка сообщение LVM_SETEXTENDEDLISTVIEWSTYLE с маской и стилем, установленными на LVS_EX_THEME:

var mask = (IntPtr)LVS_EX_THEME;
var style = (IntPtr)LVS_EX_THEME;

SendMessage(this.listView.Handle, LVM_SETEXTENDEDLISTVIEWSTYLE, mask, style);

Вам понадобятся эти декларации так или иначе:

[DllImport("coredll.dll", SetLastError = true)]
public static extern Int32 SendMessage(IntPtr hWnd,
                                       Int32 msg,
                                       IntPtr wParam,
                                       IntPtr lParam);

public const Int32
    LVM_FIRST = 0x1000,
    LVM_SETEXTENDEDLISTVIEWSTYLE = LVM_FIRST + 54;

public const Int32
    LVS_EX_THEME = 0x02000000;
...