2009-02-28 9 views
0

J'utilise VS 2005 pour créer un programme Windows Mobile en C#. J'ai besoin d'afficher des données dans une grille. Le seul contrôle de grille que j'ai pu trouver pour Windows Mobile est DataGrid, alors j'en ai placé un sur mon formulaire. J'ai maintenant besoin de changer la largeur de certaines colonnes et la couleur & de certaines cellules. Comment puis-je faire cela?Modifier la police de la cellule dans DataGrid sur Windows Mobile

De même, existe-t-il un meilleur contrôle à utiliser pour Windows Mobile?

merci John.

+0

Avez-vous déjà compris cela, je suis confronté au même problème. Tout le monde utilise l'exemple de liaison à un DataTable mais j'utilise des objets personnalisés ou DataReaders et leurs exemples ne fonctionnent pas. –

+0

désolé, mais je n'ai jamais été capable de comprendre comment changer la police de seulement certaines cellules. – Rossini

Répondre

1

Je ne suis pas sûr que vous pouvez changer la police pour des colonnes ou des cellules individuelles. La grille a une propriété qui vous permet de définir la police et la taille. Pour définir la largeur des colonnes, j'utilise cette méthode (il ajoute un style de table à la grille):

private void SetColumnWidth(int columnID, int width) 
{ 
    // add table style if first call 
    if (this.dataGrid1.TableStyles.Count == 0) 
    { 
     // Set the DataGridTableStyle.MappingName property 
     // to the table in the data source to map to. 
     dataGridColumnTableStyle.MappingName = "<name of your table in the DS here>"; 

     // Add it to the datagrid's TableStyles collection 
     this.dataGrid1.TableStyles.Add(dataGridColumnTableStyle); 
    } 

    // set width 
    this.dataGrid1.TableStyles[0].GridColumnStyles[columnID].Width = width; 
} 

Cette méthode est également utile lorsque vous voulez masquer une colonne qui se trouve dans le DataTable lié, mais vous ne voulez pas montrer (alors vous définissez la largeur = 0).

+0

J'ai ajouté la fonction que vous avez posté mais j'ai eu l'erreur Le nom 'dataGridColumnTableStyle' n'existe pas dans le contexte actuel – Rossini

+0

Désolé, mon erreur. Vous devez créer une instance DatagridTableStyle pour votre formulaire. Vous pouvez le faire au moment du design ou dans le code. Voir http://msdn.microsoft.com/en-us/library/aa984371(VS.71).aspx – cdonner

Questions connexes