prefill text in a gridgroupingcontrol cell

Hi,

I am using a gridgroupingcontrol. In one of the column, I am using mask. The format I need is ####-####. Here is what I have done,
gridColumnDescriptor3.Appearance.AnyRecordFieldCell.CellType = "MaskEdit";
gridColumnDescriptor3.Appearance.AnyRecordFieldCell.MaskEdit.Mask = "####-####";
gridColumnDescriptor3.Appearance.AnyRecordFieldCell.MaskEdit.PaddingCharacter = '0';

The issue I face is, if the column has only 7 digits like 1234567 it pads with a trailing zero, so it becomes 12345670, whereas I want a padding with leading zero like 01234567.

Is there a way to do this. Let me know if you need any more information on this.

Thanks
Manoj

1 Reply

AD Administrator Syncfusion Team November 10, 2006 07:05 AM UTC

Hi Manoj,

This is the default behavior of the MaskEdit cell type, however to get the desired behavior, you can use DrawCellDisplayText event and set the e.DispalyText to some new value to want to display. Here is a code snippet

private void gridDrawCellDisplayText(object sender, GridDrawCellDisplayTextEventArgs e)
{
if( e.Style.CellType == "MaskEdit"
&& e.Style.Text != e.DisplayText )
{
int iTrailZero = e.DisplayText.Length - e.Style.Text.Length;
string sTrailZero = string.Empty;
for(int i= 1;isTrailZero += '0';
e.DisplayText = sTrailZero + e.DisplayText.Substring(0,e.DisplayText.Length-iTrailZero + 1);
}
}

Best Regards,
Haneef

Loader.
Up arrow icon