adressprov
Messages postés62Date d'inscriptionmercredi 21 juin 2006StatutMembreDernière intervention24 mars 2007
-
7 août 2006 à 15:33
adressprov
Messages postés62Date d'inscriptionmercredi 21 juin 2006StatutMembreDernière intervention24 mars 2007
-
9 août 2006 à 12:09
Voila j'ai déjà poster sur le site d'asp.fr qui m'on renvoyait ici, donc je repose ma question.
Voila j'aimerais rajouter une colonne à mon DataGrid qui a déjà été préalablement remplit par mon dataSet.
Est-ce possible et si oui comment fait-on ?
En fait, j'ai déjà réalisé ceci mais cela ne marche pas
private string[] CreateTabColor() {
string[] Color = new string[] {"#FF0000","#00FF00","#0000FF","#FFFF00","#9900CC",etc...};
return Color;
}
Puis après j'aurais aimé faire
for (int i = 0; i<=16;i++){
MonDataGrid.Columns.Add(Color[i]);
}
Cela permet de mettre une couleur différentes dans la colonne que je viens de créer et pour chaque ligne de mon DataGrid.
cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 201361 9 août 2006 à 11:48
Ben ici on parle pas de webForm, alors je sias pas trop comment je pourrais t'aider...
Si c'est comme en WinForm DataGridColumn est une classe Abstaite de base pour toute les colonnes, on ne peut donc pas l'instancier directement, il faut le faire via un type non-abstait comme par exemple DataGridTextBox (je dis ça de tête, je ne suis pas tout à fait sûr du nom de la classe). Ca donnerait donc quelque chose comme :
DataGridColumn dgc = new DataGridTextBox();
En plus, tu travailles avec le framework 1.1, et je dois t'avouer que depuis que je suis passé au 2, je n'ai plus touché au 1.1. Et le DataGrid(View) est justement un composant qui change relativement beaucoup d'une version à l'autre...
cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 201361 8 août 2006 à 19:29
Salut,
Voici un petit exemple rapidement fait avec VisualStudio 2005 & Framework 2 => DataGridView :
private
void AddColumn(
Color defColor,
params
Color[] colors)
{
// Add the column
DataGridViewColumn col =
new
DataGridViewTextBoxColumn();
col.Name =
"myCol";
col.DefaultCellStyle.BackColor = defColor;
// Default backcolor
this.dataGridView.Columns.Add(col)
// Fill the rows...
for(
int i=0; i<
this.dataGridView.Rows.Count; i++)
{
if (i == colors.Length)
break;
// Default value
this.dataGridView[
"myCol", i].Style.BackColor = colors[i];
}
}
Appelle de la méthode :
this.AddColumn(
Color.Red,
Color.Blue,
Color.Violet);
Les deux premières cellules seront donc bleue respectivement violette, le reste des lignes, s'il y en a, sera dans la couleur par défaut, rouge.
VC# forever
adressprov
Messages postés62Date d'inscriptionmercredi 21 juin 2006StatutMembreDernière intervention24 mars 2007 9 août 2006 à 10:47
Merci pour ta réponse mais j'utilise Viusal Studio Net 2002 donc
framework 1.1, je crois et donc je n'ai pas de DataGridView mais j'ai
essayé d'exporter ta solution mais je rencontre un petit problème.
Je fais
privatevoid AddColumn(
Color defColor,
paramsColor[] colors)
{
// Add the column
DataGridColumn col = new DataGridColumn();
cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 201361 9 août 2006 à 11:07
Euh, mais tu es sur un projet web ou sur un projet winForm ??? Parce que ici c'est du C# en WinForm
Pour les questions web, il faut aller poster ta question sur ce forum.