Change property type in DataGrid style in the Paint function?
===

I have a datagrid which maps out to an SQLDataAdapater, one of the rows is an integer which is an id that corresponds to a string.

What I'd like to do in the paint function is:

protected override void Paint( Graphics g, Rectangle bounds, CurrencyManager source, int rowNum, Brush backBrush, Brush foreBrush, bool alignToRight )
      {
         int id = ( ( int )this.PropertyDescriptor.GetValue( source.List[ rowNum ] ) );

         int oldValue = id;
        this.PropertyDescriptor.SetValue( source.List[ rowNum ], "Some Text" );// m_textDataMapping[ id ] );
         base.Paint( g, bounds, source, rowNum, backBrush, foreBrush, alignToRight );
         this.PropertyDescriptor.SetValue( source.List[ rowNum ], oldValue );
}

I get an error on  this.PropertyDescriptor.SetValue about nvalid arugment exception which I assume is because of type, if I set another integer it runs fine.