2010-10-25 4 views
2

Je développe une application Windows Mobile en C# en utilisant .NET Compact Framework 3.5. Ma version cible de WM est 6.5.x. J'ai eu l'impression que Microsoft a mis à jour les contrôles de stock dans cette version de l'OS pour être plus ergonomique (plus gros caractères, plus d'espace entre les lignes dans les listbox, etc.) mais quand je crée, par exemple, un contrôle ListBox, ressemble la même chose que dans les versions précédentes de l'OS (stylet amical). Dois-je mettre à jour le style des commandes afin de profiter de ces nouvelles commandes de stock compatibles avec les doigts? Cependant, je n'arrive pas à trouver de documentation à ce sujet. Ou l'ai-je mal compris? il n'y a peut-être pas de nouveaux contrôles dans WM 6.5.x?Comment créer des contrôles de stock compatibles Windows Mobile 6.5.x?

Répondre

2

Vous pouvez obtenir le « nouveau » point de vue de la liste de rendu en envoyant la liste afficher un message LVM_SETEXTENDEDLISTVIEWSTYLE à la fois le masque et le style mis à LVS_EX_THEME:

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

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

Vous aurez besoin de ces déclarations d'une manière ou d'une autre :

[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; 
+0

Merci Johann, cela fonctionne (je suppose, ne l'ai pas testé) pour les contrôles listview. Qu'en est-il des autres contrôles, tels que les listes de sélection? –

+0

@vonolsson: Ma conjecture est que les contrôles "simples" Win32, comme la liste, ne sera pas beaucoup remodelé par Microsoft. –

+0

Il existe des listboxes (checkout Settings -> Today pour un exemple) qui sont plus faciles à utiliser dans 6.5.x. De plus, il y a le nouveau contrôle de défilement horizontal (par opposition à l'ancien contrôle de tabulation) que j'aimerais pouvoir utiliser. –

Questions connexes