Datagrid winform intercepté event textchanged

cs_pilos Messages postés 4 Date d'inscription jeudi 9 février 2006 Statut Membre Dernière intervention 13 juillet 2006 - 11 avril 2006 à 15:08
cfeltz Messages postés 8 Date d'inscription mercredi 5 juillet 2006 Statut Membre Dernière intervention 13 juillet 2006 - 13 juil. 2006 à 13:57
Salut,
je souhaite intercepter l'evennement "textchanged" sur une cellule de datagrid winform.
mon datagrid a 2 colonnes, l'utilisateur peut saisir la premiere, a chaque saisie on lance un traitement et on affiche un résultat dans la seconde colonne. Pour cela il faut que je repere l'evennement "l'utilisateur vient de modifier la valeur d'une cellule de datagrid".
Ce besoin me semble assez basique, pourtant je n'ai pas l'impression que cette fonction fasse partie des fonctions de bases, savez faire ca?

5 réponses

cfeltz Messages postés 8 Date d'inscription mercredi 5 juillet 2006 Statut Membre Dernière intervention 13 juillet 2006
13 juil. 2006 à 10:35
Très bonne question à laquelle j'aimerais beaucoup avoir la réponse...
0
cs_pilos Messages postés 4 Date d'inscription jeudi 9 février 2006 Statut Membre Dernière intervention 13 juillet 2006
13 juil. 2006 à 11:00
il y a l'event "Column_Changed" dans lequel tu peux interroger "e.ProposedValue"
0
cfeltz Messages postés 8 Date d'inscription mercredi 5 juillet 2006 Statut Membre Dernière intervention 13 juillet 2006
13 juil. 2006 à 12:05
Je ne sais pas pourquoi mais mon DataGrid ne possède pas cet évennement :-/

Voici les évennements qu'il possède :


[Designer("System.Windows.Forms.Design.DataGridDesigner, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"), ClassInterface(ClassInterfaceType.AutoDispatch), ComVisible(true), DefaultProperty("DataSource"), DefaultEvent("Navigate"), ComplexBindingProperties("DataSource", "DataMember")]
publicclassDataGrid : Control, ISupportInitialize, IDataGridEditingService
{
// Events
[SRDescription("DataGridOnNavigationModeChangedDescr"), SRCategory("CatPropertyChanged")]
publiceventEventHandlerAllowNavigationChanged;
[SRCategory("CatAction"), SRDescription("DataGridBackButtonClickDescr")]
publiceventEventHandlerBackButtonClick;
[SRCategory("CatPropertyChanged"), SRDescription("DataGridOnBackgroundColorChangedDescr")]
publiceventEventHandlerBackgroundColorChanged;
[EditorBrowsable(EditorBrowsableState.Never), Browsable(false)]
publiceventEventHandlerBackgroundImageChanged;
[Browsable(false), EditorBrowsable(EditorBrowsableState.Never)]
publiceventEventHandlerBackgroundImageLayoutChanged;
[SRDescription("DataGridOnBorderStyleChangedDescr"), SRCategory("CatPropertyChanged")]
publiceventEventHandlerBorderStyleChanged;
[SRCategory("CatPropertyChanged"), SRDescription("DataGridOnCaptionVisibleChangedDescr")]
publiceventEventHandlerCaptionVisibleChanged;
[SRCategory("CatPropertyChanged"), SRDescription("DataGridOnCurrentCellChangedDescr")]
publiceventEventHandlerCurrentCellChanged;
[Browsable(false), EditorBrowsable(EditorBrowsableState.Never)]
publiceventEventHandlerCursorChanged;
[SRCategory("CatPropertyChanged"), SRDescription("DataGridOnDataSourceChangedDescr")]
publiceventEventHandlerDataSourceChanged;
[SRCategory("CatPropertyChanged"), SRDescription("DataGridOnFlatModeChangedDescr")]
publiceventEventHandlerFlatModeChanged;
[SRCategory("CatAction"), SRDescription("DataGridNavigateEventDescr")]
publiceventNavigateEventHandlerNavigate;
[SRCategory("CatAction"), SRDescription("DataGridNodeClickEventDescr")]
internaleventEventHandlerNodeClick;
[SRDescription("DataGridOnParentRowsLabelStyleChangedDescr"), SRCategory("CatPropertyChanged")]
publiceventEventHandlerParentRowsLabelStyleChanged;
[SRCategory("CatPropertyChanged"), SRDescription("DataGridOnParentRowsVisibleChangedDescr")]
publiceventEventHandlerParentRowsVisibleChanged;
[SRDescription("DataGridOnReadOnlyChangedDescr"), SRCategory("CatPropertyChanged")]
publiceventEventHandlerReadOnlyChanged;
protectedeventEventHandlerRowHeaderClick;
[SRCategory("CatAction"), SRDescription("DataGridScrollEventDescr")]
publiceventEventHandlerScroll;
[SRDescription("DataGridDownButtonClickDescr"), SRCategory("CatAction")]
publiceventEventHandlerShowParentDetailsButtonClick;
[EditorBrowsable(EditorBrowsableState.Never), Browsable(false)]
publiceventEventHandlerTextChanged;
J'ai essayé d'utiliser TextChanged, mais il ne le capte jamais, j'ai également essayé avec CurrentCellChanged, mais je n'arrive pas non plus a faire ce que je veux à cause d'effet de bord indésirable.
Bizzare
0
cs_pilos Messages postés 4 Date d'inscription jeudi 9 février 2006 Statut Membre Dernière intervention 13 juillet 2006
13 juil. 2006 à 13:20
c'est un event de la datatable qui sert de datasource au datagrid :

dt.ColumnChanged +=

new DataColumnChangeEventHandler ( Column_Changed );
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cfeltz Messages postés 8 Date d'inscription mercredi 5 juillet 2006 Statut Membre Dernière intervention 13 juillet 2006
13 juil. 2006 à 13:57
ok merci.. C pour ca que je ne l'ai pas trouvé... perso je dois passer par des DataView, mais C pas grave...
G réussi a m'en sortir avec l'évennement CurrentCellChanged du DataGrid, en fait, mon problème venait du fait que je modifiais les autres cellules avec
dataGrid1

[iLastRowSelected
, iLastColSelected
] = sValue
finalement je les modifie avec
DView

.Table
.Rows
[iLastRowSelected
][iLastColSelected
] = sValue
;
0
Rejoignez-nous