Rappelle de fonction qui ne marche qu'une foi

Résolu
leroitony Messages postés 22 Date d'inscription jeudi 28 août 2003 Statut Membre Dernière intervention 5 avril 2007 - 28 mars 2007 à 10:06
leroitony Messages postés 22 Date d'inscription jeudi 28 août 2003 Statut Membre Dernière intervention 5 avril 2007 - 29 mars 2007 à 13:08
Salut à tous

voila je me retrouve bloquer par mon code je vais essayer d'etre claire pour que vous compreniere ce que j'ai fais

tout ce deroule sur un pocket pc avec un datagrid en compact framework 2.0

j'ai une class Appreil

ou j'ai une methode static

qui me permet de cree un datagrid formater comme je le veux que je renvois a mon forms qui l'affiche

code de la methode static :

static

public
DataGrid DataGridAppreil(
DataGrid dgReceve,
DataTable dtAcharger,
int longeurMax,
int action){

DataColumn column;

DataRow row;

DataTable dtTmp =
new
DataTable(
"conteneurs_a_faire");

DataGrid dgTmp = dgReceve;

DataGridTableStyle ts =
new
DataGridTableStyle();

try{

# region

creation du dataTablecolumn =

new
DataColumn();column.DataType = System.

Type.GetType("System.String");column.ColumnName "C_Barre";column.ColumnMapping

MappingType.Hidden;dtTmp.Columns.Add(column);

//column = new DataColumn();

//column.DataType = System.Type.GetType("System.String");

//column.ColumnName = "A";

//dtTmp.Columns.Add(column);column =

new
DataColumn();column.DataType = System.

Type.GetType(
"System.Int32");column.ColumnName =

"fk_cont";dtTmp.Columns.Add(column);

column =

new
DataColumn();column.DataType = System.

Type.GetType(
"System.String");column.ColumnName =

"Marque";dtTmp.Columns.Add(column);

column =

new
DataColumn();column.DataType = System.

Type.GetType(
"System.String");column.ColumnName =

"Modele";dtTmp.Columns.Add(column);

column =

new
DataColumn();column.DataType = System.

Type.GetType(
"System.String");column.ColumnName =

"Famille";dtTmp.Columns.Add(column);

column =

new
DataColumn();column.DataType = System.

Type.GetType(
"System.String");column.ColumnName =

"Emballage";dtTmp.Columns.Add(column);

if (action == 1)
//si on peut annuller{

column =

new
DataColumn();column.DataType = System.

Type.GetType(
"System.String");column.ColumnName =

"ACTION";dtTmp.Columns.Add(column);

}

foreach (
DataRow dr
in dtAcharger.Rows){

row = dtTmp.NewRow();

row[

"C_Barre"] = dr[
"C_Barre"].ToString();

//row["A"] = dr["A"].ToString();row[

"fk_cont"] = dr[
"fk_cont"].ToString();row[

"Marque"] = dr[
"marque"].ToString();row[

"Modele"] = dr[
"modele"].ToString();row[

"Famille"] = dr[
"famille"].ToString();row[

"Emballage"] = dr[
"emballage"].ToString();

if (action == 1)
// si on peut annuller{

row[

"ACTION"] =
"ANNULER";}

dtTmp.Rows.Add(row);

}

#endregion

ts.MappingName = dtTmp.TableName;

dgTmp.TableStyles.Add(ts);

dgTmp.DataSource = dtTmp;

dgTmp.TableStyles[

"conteneurs_a_faire"].GridColumnStyles[
"C_Barre"].Width = longeurMax / 100 * 30;dgTmp.TableStyles[

"conteneurs_a_faire"].GridColumnStyles[
"fk_cont"].Width = 0;

return dgTmp;}

catch (
Exception ex){

string strError = ex.Message;

return dgTmp;}

}

ce code fonction assez bien quand je lence mon applic dans mon form via la fonction SelectAndShow();

 

mais si je desside de supprimer un tuple de mon datagrid (via un fonction) et que je rappelle ma fonction static pour rafficher mon datagrid updater

je rappelle

SelectAndShow();

public
void SelectAndShow(){

dtAcharger = CLASS.

ClAppareil.SelectStoreCAFChargement(id_localisation);

//dgChargement.DataSource = dtAcharger;

this.dgChargement = CLASS.
ClAppareil.DataGridAppreil(
this.dgChargement, dtAcharger,
this.dgChargement.Width, 0);

this.dgChargement.Refresh();}

la ca marche plus il me genere un error 

" Un message d'erreur ne peut pas être affiché, car un assembly de ressource facultatif le contenant est introuvable "

pas plus d'info

elle apparet au niveau de la fonction static a la ligne

dgTmp.TableStyles.Add(ts);

si qlq un peux m'aider se serais suppert

bien à vous
Lizati

de la panique née la maîtrise

1 réponse

leroitony Messages postés 22 Date d'inscription jeudi 28 août 2003 Statut Membre Dernière intervention 5 avril 2007
29 mars 2007 à 13:08
j'ai resolus le probleme

par contre je comprend pas pk ca fonctionne comme ca si qlq a une explication suis preneur

pour resoudre le probleme j'ai du rajouter dans la methode static  dgTmp.TableStyles.Clear();

dgTmp.TableStyles.Add(ts);

dgTmp.TableStyles.Clear();

dgTmp.DataSource = dtTmp;

et ca fonction mais je sais pas pk ;)

bien à vous
Lizati

de la panique née la maîtrise
3
Rejoignez-nous