2010-03-30 4 views
0

Dans ma grille, j'ai une colonne de type de lien. comme nous ne pouvons pas éditer une cellule de ce type, j'affiche une zone de texte si l'utilisateur sélectionne une cellule pour l'éditer. mais ma boîte de texte est incapable de lire le caractère point. J'ai vérifié les événements "key press" et "text changed" mais les événements ne sont pas déclenchés pour le point comme entrée.
EDIT: Je peux entrer un caractère ou un symbole sauf le point ..; (Impossible d'entrer un point dans une zone de texte

J'affichons textbox sur événement click cellulaire de gridview

if (DataGrid.Columns[e.ColumnIndex].GetType().Name == "DataGridViewLinkColumn") 
{ 
txt_Data.Location = DataGrid.GetCellDisplayRectangle(e.ColumnIndex, e.RowIndex, false).Location; 

txt_Data.Size  = DataGrid.GetCellDisplayRectangle(e.ColumnIndex, e.RowIndex, false).Size; 

txt_Data.Visible  = true; 
txt_Data.Focus(); 
} 

et attribuer une valeur à la cellule comme

private void txt_Data_TextChanged(object sender, EventArgs e) 
{ 
    DataGrid.CurrentCell.Value = txt_Data.Text; 
} 
+0

Pourriez-vous élaborer sur ce point. Êtes-vous attacher aux événements clés sur la zone de texte ou la grille? – Andy

+0

Donc, pour être clair, l'événement txt_Data_TextChanged ne se déclenche pas? Ou est-ce juste que la cellule actuelle n'obtient pas le point? – Andy

+0

non je ne peux pas entrer le point dans la zone de texte .. si j'appuie sur point rien happn .. :( – Royson

Répondre

0

J'ai eu ce problème il y a quelques jours et il me rendait fou .. Enfin compris, donc je suis revenu ici pour éclaircir :) Le problème est la méthode EditingControlWantsInputKey pour votre contrôle d'édition .. Faire Assurez-vous qu'il est vrai pour tous les caractères (ou au moins les caractères que vous voulez prendre en charge). Fait! : D

Questions connexes