c# - CellEditEnding not working -


i have datagrid on want control value entered numeric.

enter image description here

so when enter wrong value in picture

enter image description here

i want restore previous value.

to need catch new entered value when that

enter image description here

you can see still old value before editing. have got new entered value has analyzed after enter key pressed?

use celleditingtemplate :

<datagridtemplatecolumn>     <datagridtemplatecolumn.celltemplate>         <datatemplate>             <textblock text="{binding age}"/>         </datatemplate>     </datagridtemplatecolumn.celltemplate>     <datagridtemplatecolumn.celleditingtemplate>         <datatemplate>             <textbox lostfocus="textbox_lostfocus" background="aquamarine" text="{binding age, mode=twoway, updatesourcetrigger=propertychanged}"/>         </datatemplate>     </datagridtemplatecolumn.celleditingtemplate> </datagridtemplatecolumn> 

and handle lostfocus event of textbox.

below code reject non-integer values , revert original value.

private void textbox_lostfocus(object sender, routedeventargs e)         {             textbox tb = (textbox)sender;             int result;             if (!int.tryparse(tb.text, out result))                 tb.getbindingexpression(textbox.textproperty).updatetarget();         }  

Comments

Popular posts from this blog

Hatching array of circles in AutoCAD using c# -

ios - UITEXTFIELD InputView Uipicker not working in swift -

Python Pig Latin Translator -