I'm hoping someone has seen this before.
On one web server (and only one) the following exception is being generated when the grid data is exported to PDF:
"System.Exception: Unable to retrieve Unicode ranges. at Telerik.Pdf.Gdi.GdiUnicodeRanges.LoadRanges(GdiDeviceContent dc) at ... [more stack]
I've disassembled the Telerik assembly that contains the LoadRanges function and this function contains a call to a Windows API function, i.e.
int fontUnicodeRanges = NativeMethods.GetFontUnicodeRanges(dc.Handle, glyphSet);
if (fontUnicoderanges == 0)
{
[code]
}
else
{
throw new Exception("Unable to retrieve Unicode ranges.");
}
The NativeMethods.GetFontUnicodeRanges maps to the following gdi32.dll Windows API function:
internal static extern int getFontUnicodeRanges(IntPtr hdc, GlyphSet lpgs);
The return code from this function is 0 (ERROR). Does anyone know what might cause this particular situation when exporting to PDF from the Telerik grid? I'm using the default PDF export functionality of the grid.
How can I add an event handler via JavaScript in pageLoad to handle the keyPress event of a RadComboBox?
We create a series of ComboBox controls dynamically based on user preferences. We want to be able to accept user keystrokes and when they press the Enter key, fire the rrKeyPress event.
We're unable to define this in our code due to business constraints; it *MUST* be in JavaScript on pageLoad.
I've tried adding it using the code below, but it didn't work as expected:
// Loop through controls and attachvar comboBox = document.getElementById('RadComboBox1');comboBox.add_valueChanged(rrKeyPress);
Any suggestions?
I have a chart that uses a linqDataSource.
Some of the incoming data has no values.
I need to hide the ColumnSeries if that is true.. Value == 0 ? visible = false : visible = true;
Can someone point me to an article or such?
<telerik:ColumnSeries DataFieldY="Auctioned" Name="Auctioned">
<Appearance>
<FillStyle BackgroundColor="#8dd3c7"></FillStyle>
</Appearance>
<LabelsAppearance Visible="False" Position="Center">
</LabelsAppearance>
<TooltipsAppearance Visible="True">
<ClientTemplate>
Auctioned<br/>#=value#
</ClientTemplate>
</TooltipsAppearance>
</telerik:ColumnSeries>
I am facing problem with RadEditor toolbar in IE .
When I host my website
and open my page first time, toolbar Icons disappear in IE only. In chrome it’s
working fine.
When I refresh my page again they
appears . This problem is happen when
I run this application first time.
Also track change not not working properly.
My Rad control product
version is 2013.2.717.40(Q2 2013)

Hi all,
I am using dependent radcomboboxes. On select of any item in combobox1, combobox2 is populated.
I am facing an issue that the vertical scroll bar appears in the dependent dropdown in a very sudden manner. Eg if number of items is 1, scroll bar appears, if it is more than one it doesnot appear. Please help me remove this scroll bar. I want scroll bar only when the dropdowns height crosses a certain limit.
P S : I have already tried setting MaxHeight property and also
html {
overflow: hidden;
}
Regards,
Anurag
Hi team,
I have a DataTable, which is used to bind my Radgrid. In my grid I have a Template column which creates a Link button .
If I click the link button , I am getting my corresponding Datatable row index in itemCommand() by "e.Item.DataSetIndex" perfectily.
If I filtered my grid and click the link button, I am getting wrong Datatable row ID by "e.Item.DataSetIndex". !
Please help , How can I get correct Datatable row id in filtered mode (itemCommand())?
Ramesh.

Hi, I'm using a Three Tier Architecture, and I am able to see the documents from my Oracle database. Anyway I'm having some trouble with the Insert option.
The grid loads fine and show the table content, I can click Add a New entry but when I click Insert nothing happens.
Here is my code so far:
The DAL makes the call to the DB, assigning properties through the Business Object class (below)
public List<DocsBO> InsertDocuments() { using (_connection) { _connection.Open(); using (_command = new OracleCommand("INSERT INTO PROM_DOCS (DOCID, DOCTITLE, DOCDESCRIPTION, FILENAME, FILENAMESTARTPLAY," + "TYPE, LASTEDIT, DOCVERSION, THUMBNAIL, STATUS, DISCLOSABLE, PRODUCTID, LAST_USER, LAST_EDIT, CATEGORYNAME)" + "VALUES (:DOCID, :DOCTITLE, :DOCDESCRIPTION, :FILENAME, :FILENAMESTARTPLAY, :TYPE, :LASTEDIT, :DOCVERSION, :THUMBNAIL, :STATUS," + ":DISCLOSABLE, :PRODUCTID, :LAST_USER, :LAST_EDIT, :CATEGORYNAME)", _connection)) { List<DocsBO> InsDocs = new List<DocsBO>(); using (OracleDataReader _dataReader = _command.ExecuteReader()) { while (_dataReader.Read()) { InsDocs.Add(new DocsBO()); InsDocs[InsDocs.Count - 1].Id = Convert.ToInt32(_dataReader["DOCID"]); InsDocs[InsDocs.Count - 1].Name = _dataReader["DOCTITLE"].ToString(); InsDocs[InsDocs.Count - 1].Description = _dataReader["DOCDESCRIPTION"].ToString(); InsDocs[InsDocs.Count - 1].FileName = _dataReader["FILENAME"].ToString(); InsDocs[InsDocs.Count - 1].FileNameStartPlay = _dataReader["FILENAMESTARTPLAY"].ToString(); InsDocs[InsDocs.Count - 1].Type = Convert.ToInt32(_dataReader["TYPE"]); InsDocs[InsDocs.Count - 1].LastEdit = Convert.ToDateTime(_dataReader["LASTEDIT"]); InsDocs[InsDocs.Count - 1].Version = _dataReader["DOCVERSION"].ToString(); InsDocs[InsDocs.Count - 1].Thumbnail = _dataReader["THUMBNAIL"].ToString(); InsDocs[InsDocs.Count - 1].Status = Convert.ToInt32(_dataReader["STATUS"]); InsDocs[InsDocs.Count - 1].Disclosable = Convert.ToBoolean(_dataReader["DISCLOSABLE"]); #region if DBNull PRODUCTID if (_dataReader["PRODUCTID"] == DBNull.Value) { InsDocs[InsDocs.Count - 1].ProductId = 0; } else { InsDocs[InsDocs.Count - 1].ProductId = Convert.ToInt32(_dataReader["PRODUCTID"]); } #endregion InsDocs[InsDocs.Count - 1].LastUser = _dataReader["LAST_USER"].ToString(); InsDocs[InsDocs.Count - 1].LastEdit2 = Convert.ToDateTime(_dataReader["LAST_EDIT"]); InsDocs[InsDocs.Count - 1].CategoryName = _dataReader["CATEGORYNAME"].ToString(); } } return InsDocs; } } }
The BLL takes the returning list from the DAL
public List<DocsBO> InsertDocs() { List<DocsBO> _newDocs; DocsDal NewDocs = new DocsDal(); _newDocs = NewDocs.InsertDocuments(); return _newDocs; }
The Presentation Layer containing the RadGrid takes the list and populates itself
protected void RadGrid1_NeedDataSource(object sender, Telerik.Web.UI.GridNeedDataSourceEventArgs e) { RadGrid1.DataSource = _BLL.LoadDocs(); }Here is my Grid
<telerik:RadGrid ID="RadGrid1" runat="server" OnNeedDataSource="RadGrid1_NeedDataSource" GroupPanelPosition="Top" AllowPaging="True" AllowSorting="True" AllowAutomaticDeletes="True" AllowAutomaticInserts="True" AllowAutomaticUpdates="True" AutoGenerateColumns="False"> <MasterTableView CommandItemDisplay="Top" PageSize="20"> <ItemStyle CssClass="radGridRows" /> <AlternatingItemStyle CssClass="radGridRows" /> <Columns> <telerik:GridBoundColumn DataField="Id" FilterControlAltText="Filter column column" HeaderText="Id" UniqueName="column"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Name" FilterControlAltText="Filter column1 column" HeaderText="Name" UniqueName="column1"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Description" FilterControlAltText="Filter column2 column" HeaderText="Description" UniqueName="column2"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="FileName" FilterControlAltText="Filter column3 column" HeaderText="File Name" UniqueName="column3"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="FileNameStartPlay" FilterControlAltText="Filter column4 column" HeaderText="FN Start Play" UniqueName="column4"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Type" FilterControlAltText="Filter column5 column" HeaderText="Type" UniqueName="column5"> </telerik:GridBoundColumn> <telerik:GridDateTimeColumn DataField="LastEdit" FilterControlAltText="Filter column6 column" HeaderText="Last Edit" UniqueName="column6" PickerType="DateTimePicker"> </telerik:GridDateTimeColumn> <telerik:GridBoundColumn DataField="Version" FilterControlAltText="Filter column7 column" HeaderText="Version" UniqueName="column7"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Thumbnail" FilterControlAltText="Filter column8 column" HeaderText="Thumbnail" UniqueName="column8"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Status" FilterControlAltText="Filter column9 column" HeaderText="Status" UniqueName="column9"> </telerik:GridBoundColumn> <telerik:GridCheckBoxColumn DataField="Disclosable" DataType="System.Boolean" DefaultInsertValue="false" FilterControlAltText="Filter column10 column" HeaderText="Disclosable" UniqueName="column10"> </telerik:GridCheckBoxColumn> <telerik:GridBoundColumn DataField="ProductId" FilterControlAltText="Filter column11 column" HeaderText="Product Id" UniqueName="column11" Visible="false"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="LastUser" FilterControlAltText="Filter column12 column" HeaderText="Last User" UniqueName="column12"> </telerik:GridBoundColumn> <telerik:GridDateTimeColumn DataField="LastEdit2" FilterControlAltText="Filter column13 column" HeaderText="Last Edit" UniqueName="column13" Visible="false" PickerType="DateTimePicker"> </telerik:GridDateTimeColumn> <telerik:GridBoundColumn DataField="CategoryName" FilterControlAltText="Filter column14 column" HeaderText="Category Name" UniqueName="column14" Visible="false"> </telerik:GridBoundColumn> </Columns> </MasterTableView> </telerik:RadGrid>
And My Business Object Properties class
public class DocsBO { private int DocId; public int Id { get { return DocId; } set { DocId = value; } } private string DocName; public string Name { get { return DocName; } set { DocName = value; } } private string DocDesc; public string Description { get { return DocDesc; } set { DocDesc = value; } } private string DocFileName; public string FileName { get { return DocFileName; } set { DocFileName = value; } } private string DocFileNameStartPlay; public string FileNameStartPlay { get { return DocFileNameStartPlay; } set { DocFileNameStartPlay = value; } } private int DocType; public int Type { get { return DocType; } set { DocType = value; } } private DateTime DocLastEdit; public DateTime LastEdit { get { return DocLastEdit; } set { DocLastEdit = value; } } private string DocVersion; public string Version { get { return DocVersion; } set { DocVersion = value; } } private string DocThumbnail; public string Thumbnail { get { return DocThumbnail; } set { DocThumbnail = value; } } private int DocStatus; public int Status { get { return DocStatus; } set { DocStatus = value; } } private bool DocDisclosable; public bool Disclosable { get { return DocDisclosable; } set { DocDisclosable = value; } } private int DocProductId; public int ProductId { get { return DocProductId; } set { DocProductId = value; } } private string DocLastUser; public string LastUser { get { return DocLastUser; } set { DocLastUser = value; } } private DateTime DocLastEdit2; public DateTime LastEdit2 { get { return DocLastEdit2; } set { DocLastEdit2 = value; } } private string DocCategoryName; public string CategoryName { get { return DocCategoryName; } set { DocCategoryName = value; } } }
I also tried making a call in that way:
public List<DocsBO> InsertDocuments(){ List<DocsBO> InsertDocs = new List<DocsBO>(); using (_connection) { _connection.Open(); using (_command = new OracleCommand("INSERT INTO PROM_DOCS (DOCID, DOCTITLE, DOCDESCRIPTION, FILENAME, FILENAMESTARTPLAY," + "TYPE, LASTEDIT, DOCVERSION, THUMBNAIL, STATUS, DISCLOSABLE, PRODUCTID, LAST_USER, LAST_EDIT, CATEGORYNAME)" + "VALUES (:DOCID, :DOCTITLE, :DOCDESCRIPTION, :FILENAME, :FILENAMESTARTPLAY, :TYPE, :LASTEDIT, :DOCVERSION, :THUMBNAIL, :STATUS," + ":DISCLOSABLE, :PRODUCTID, :LAST_USER, :LAST_EDIT, :CATEGORYNAME)", _connection)) InsertDocs.Add(new DocsBO()); InsertDocs[InsertDocs.Count - 1].Id = Convert.ToInt32(_command.Parameters.Add(":DOCID")); InsertDocs[InsertDocs.Count - 1].Name = _command.Parameters.Add(":DOCTITLE").ToString(); InsertDocs[InsertDocs.Count - 1].Description = _command.Parameters.Add(":DOCDESCRIPTION").ToString(); InsertDocs[InsertDocs.Count - 1].FileName = _command.Parameters.Add(":FILENAME").ToString(); InsertDocs[InsertDocs.Count - 1].FileNameStartPlay = _command.Parameters.Add(":FILENAMESTARTPLAY").ToString(); InsertDocs[InsertDocs.Count - 1].Type = Convert.ToInt32(_command.Parameters.Add(":TYPE")); InsertDocs[InsertDocs.Count - 1].LastEdit = Convert.ToDateTime(_command.Parameters.Add(":LASTEDIT")); InsertDocs[InsertDocs.Count - 1].Version = _command.Parameters.Add(":DOCVERSION").ToString(); InsertDocs[InsertDocs.Count - 1].Thumbnail = _command.Parameters.Add(":THUMBNAIL").ToString(); InsertDocs[InsertDocs.Count - 1].Status = Convert.ToInt32(_command.Parameters.Add(":STATUS")); InsertDocs[InsertDocs.Count - 1].Disclosable = Convert.ToBoolean(_command.Parameters.Add(":DISCLOSABLE")); InsertDocs[InsertDocs.Count - 1].ProductId = Convert.ToInt32(_command.Parameters.Add(":PRODUCTID")); InsertDocs[InsertDocs.Count - 1].LastUser = _command.Parameters.Add(":LAST_USER").ToString(); InsertDocs[InsertDocs.Count - 1].LastEdit2 = Convert.ToDateTime(_command.Parameters.Add(":LAST_EDIT")); InsertDocs[InsertDocs.Count - 1].CategoryName = _command.Parameters.Add(":CATEGORYNAME").ToString(); _command.ExecuteNonQuery(); return InsertDocs; }}
Result is the same, I did an Insert command obviously
protected void RadGrid1_InsertCommand(object sender, Telerik.Web.UI.GridCommandEventArgs e) { _BLL.InsertDocs(); }
But it's still the same.
Any suggestions?