How to get CellValue inside sfDataGrid_ToolTipOpening event method ?
Hello,
I want to get Cell Value in sfDataGrid_ToolTipOpening event method. I need of this cell value to convert it from Byte[] type to Image type and so display it in ToolTip.
Best regards
SIGN IN To post a reply.
5 Replies
DY
Deivaselvan Y
Syncfusion Team
December 5, 2018 08:58 AM UTC
Hi Cosyspro,
Thanks for contacting Syncfusion Support.
We have created a sample to achieve your requirement to convert the Byte[] type value to image and display it in the tooltip using ToolTipOpening event. Please refer the following code example and sample from the given location.
Code example :
|
this.sfDataGrid1.ToolTipOpening += sfDataGrid1_ToolTipOpening;
void sfDataGrid1_ToolTipOpening(object sender, ToolTipOpeningEventArgs e)
{
if (e.Column.MappingName == "Country" && e.Record != null)
{
var byteArray = (e.Record as OrderInfo).Country;
if (byteArray != null)
{
using (System.IO.MemoryStream stream = new MemoryStream(byteArray))
{
e.ToolTipInfo.Items[0].Text = string.Empty;
e.ToolTipInfo.Items[0].Image = new Bitmap(Image.FromStream(stream));
}
}
}
} |
In the above given code example we have casted the ToolTipOpeningEventArgs.Record property to OrderInfo to get the value of a specific column in the record. If the DataGrid is bounded with a DataTable we should use DataRowView to cast the Record.
Regards,
Deivaselvan
Deivaselvan
CO
Cosyspro
December 6, 2018 09:54 AM UTC
Thanks for your response.
I want generalize sfDataGrid_ToolTipOpening for any data collection loaded in SFDataGrid. So, is it possible to get the cell value from SfDataGrid's cell by using Column type (GridImageColumn) and row index and this without use Record type ?
DY
Deivaselvan Y
Syncfusion Team
December 7, 2018 05:18 AM UTC
Hi Cosyspro,
Thanks for your update.
Please make use of the following code example and sample from the given link to get the cell value within the ToolTipOpening event in a generic way for all type of data source.
Code example :
|
this.sfDataGrid1.ToolTipOpening += sfDataGrid1_ToolTipOpening;
void sfDataGrid1_ToolTipOpening(object sender, ToolTipOpeningEventArgs e)
{
if (e.Column.GetType() == typeof(GridImageColumn) && e.Record != null)
{
ItemPropertiesProvider provider = this.sfDataGrid1.View.GetPropertyAccessProvider();
var byteArray = (byte[])provider.GetValue(e.Record, e.Column.MappingName);
if (byteArray != null)
{
using (System.IO.MemoryStream stream = new MemoryStream(byteArray))
{
e.ToolTipInfo.Items[0].Text = string.Empty;
e.ToolTipInfo.Items[0].Image = new Bitmap(Image.FromStream(stream));
}
}
}
}
|
Sample link : http://www.syncfusion.com/downloads/support/directtrac/general/ze/CS_Generic1871493402
Regards,
Deivaselvan
Deivaselvan
CO
Cosyspro
December 9, 2018 08:21 AM UTC
Hi Deivaselvan,
Thanks for your response. It's work fine.
However, the display of the image in tooltip is limited in width. So, the display is truncated.
Regards.
JN
Jayaleshwari N
Syncfusion Team
December 10, 2018 07:15 AM UTC
Hi Cosyspro,
Thanks for the update.
We have checked the query regarding “Image is truncated in tooltip’ from our side. You can resolve this by fit the image into the size of the tooltip by using Padding property of the ToolTipItem.
Code snippet C#: Refer to below code, sets the padding for tooltip item.
|
this.sfDataGrid1.ToolTipOpening += sfDataGrid1_ToolTipOpening;
void sfDataGrid1_ToolTipOpening(object sender, ToolTipOpeningEventArgs e)
{
if (e.Column.GetType() == typeof(GridImageColumn) && e.Record != null)
{
ItemPropertiesProvider provider = this.sfDataGrid1.View.GetPropertyAccessProvider();
var byteArray = (byte[])provider.GetValue(e.Record, e.Column.MappingName);
if (byteArray != null)
{
using (System.IO.MemoryStream stream = new MemoryStream(byteArray))
{
e.ToolTipInfo.Items[0].Text = string.Empty;
e.ToolTipInfo.Items[0].Image = new Bitmap(Image.FromStream(stream));
e.ToolTipInfo.Items[0].Padding = new Padding(0);
}
}
}
} |
We have attached the sample for your reference and you can download the same from the following location.
Sample link : http://www.syncfusion.com/downloads/support/directtrac/general/ze/CS_Padding-1743036090
Please let us know if you would require further assistance.
Regards,
Jayaleshwari N
SIGN IN To post a reply.
- 5 Replies
- 3 Participants
-
CO Cosyspro
- Dec 4, 2018 10:03 AM UTC
- Dec 10, 2018 07:15 AM UTC