Telerik Forums
UI for ASP.NET AJAX Forum
1 answer
72 views
Hi there,

I am trying to exportToPDF in a radgrid.   It seems to work fine except for a gridtemplatecolumn i have which contains another radgrid.

So basically, each row has a column which contains a grid containing a list of strings (they are validation msg's).  

I have found a few threads telling me to enable the viewstate for the grid, and also, to ExportOnlyData="false", which has no affect.

Everything else seems to work fine, except the exporting.

thanks in advance!

Neil

below is the code:
<telerik:RadGrid id="rgdListLicences"   runat="server" Width="100%"  OnNeedDataSource="rgdListLicences_NeedDataSource"  GridLines="None" Skin="eLicensing_paging"  EnableEmbeddedSkins="false" EnableViewState="true">
                     <ExportSettings IgnorePaging="true" OpenInNewWindow="true" ExportOnlyData="false"   >
                        <Pdf PageHeight="210mm" AllowPrinting="true"   PageWidth="297mm" PageTitle="Print Validations" DefaultFontFamily="Arial Unicode MS"
                        PageBottomMargin="20mm" PageTopMargin="20mm"  PageLeftMargin="20mm" PageRightMargin="20mm" />
                     </ExportSettings>
                     <MasterTableView RetrieveAllDataFields="false" CommandItemDisplay="Top" AutoGenerateColumns="false"  >
                        <CommandItemTemplate>
                                <telerik:radbutton ID="DownloadPDF" AutoPostBack="true" CssClass="pdfButton" runat="server"  Width="10%" Text="Print Validations" CommandName="ExportToPdf"/>
       
                        </CommandItemTemplate>
                        <Columns>
                            <telerik:GridBoundColumn DataField="clientRef" DataFormatString="{0:dd/MM/yy}" HeaderText="Client Ref"><ItemStyle Width="12%" VerticalAlign="Top" />
                            </telerik:GridBoundColumn>
                            <telerik:GridBoundColumn DataField="ServiceName" HeaderText="Service Name"><ItemStyle Width="28%" VerticalAlign="Top" />
                            </telerik:GridBoundColumn>
                            <telerik:GridBoundColumn DataField="commencementDate" DataFormatString="{0:dd/MM/yy}" HeaderText="Start Date"><ItemStyle Width="12%"  VerticalAlign="Top" />
                            </telerik:GridBoundColumn>
                            <telerik:GridTemplateColumn UniqueName="validations" HeaderText="Validations" SortExpression="CompanyName"  >
                                <ItemTemplate>
                                    <telerik:radgrid ID="rgdValidations"  OnNeedDataSource="rgdValidations_NeedDataSource" BorderStyle="None" ShowHeader="false" runat="server"  EnableViewState="true" >
                                        <MasterTableView>
                                            <ItemStyle Font-Size="Smaller" />
                                            <AlternatingItemStyle Font-Size="Smaller"/>
                                        </MasterTableView>
                                    </telerik:radgrid>
                                </ItemTemplate>
                            </telerik:GridTemplateColumn>
                        </Columns>
                    </MasterTableView>
                </telerik:RadGrid>

Protected Sub rgdValidations_NeedDataSource(ByVal sender As Object, ByVal e As GridNeedDataSourceEventArgs)
 
    Dim RadGrid2 As RadGrid = CType(sender, RadGrid)
    Dim item As GridDataItem = RadGrid2.NamingContainer
    Dim validations As List(Of String) = CType(item.DataItem, LicencesLicence).validations
 
    RadGrid2.DataSource = validations
End Sub


Daniel
Telerik team
 answered on 16 May 2012
1 answer
183 views
Hi,

I'm having browser compatibility issues with radgrid row height. Firefox seems to be fine but internet explorer is not. I attached a screen shot of both can you assist. I've  tried everything. here is the css:
.rgRow,.rgRow td
            {
                height:30px !important;
                cursor:pointer;
               background-color: #ffffff;
                 border-bottom:solid 1px #EDEDED !important;
            }
            .rgAltRow,.rgAltRow td
            {
                height:30px !important;
                cursor:pointer;
                background-color: #ffffff;
                border-bottom:solid 1px #EDEDED;
                /*border:none!important;
                background-image : none!important;*/
            }
Thanks,
Ron
Pavlina
Telerik team
 answered on 16 May 2012
1 answer
74 views
Hi,

I am using the radcombobox with automatica load on demand:

<telerik:RadComboBox ID="cboSKU" runat="server" 
        DataTextField="STCode" DataValueField="STCode" MarkFirstMatch="true" ShowToggleImage="false"
        EnableAutomaticLoadOnDemand="true" ShowMoreResultsBox="true" ItemsPerRequest="30"
        AutoPostBack="true" onselectedindexchanged="cboSKU_SelectedIndexChanged"
        >
 
this works as expected. This combo box is on an aspx page using a master page. On the master page I'm logging events - however I do not want to capture ajax postbacks. (I do want to capture non ajax postbacks, but not postbacks from, for example, the combo box repopulating values as you type)

i have tried:
if (RadAjaxManager1.IsAjaxRequest == false)
            {
                AddLogEntry();
            }

and

if (ScriptManager.GetCurrent(Page).IsInAsyncPostBack == false)
            {
                AddLogEntry();
            }

with no success.

Any advice would be appreciated.

Thank you, 
Ryan
Ivana
Telerik team
 answered on 16 May 2012
4 answers
519 views
Hi All,

My user is having Html content having width set in % for TD. But when it is exported to pdf, it does not render it as per % set. It defaults to Total table width / no of TD.

<table style="width:100%;">
<tr>
   <td style="width:10%;">No</td>
   <td style="width:70%;">Full Name</td>
   <td style="width:20%;">Telephone</td>
</tr>
</table>

It displays <table> with all TDs having equal width i.e. 33% appx.

Thanks in advance for all replies.

Piyush
Rumen
Telerik team
 answered on 16 May 2012
2 answers
80 views
Please see attached screenshot. How to resolve this issue? Thanks.
Rumen
Telerik team
 answered on 16 May 2012
2 answers
166 views
Hi,
I have a requirement where certain days in calendar have to be disabled. So I have used RadCalendarDay class to accomplish it. The problem is, though the dates are disabled, the cursor is still the html hand and not the default. How can I disable the html hand cursor. I have seen at this example (http://demos.telerik.com/aspnet-ajax/calendar/examples/functionality/specialdays/defaultcs.aspx )
, but my dates are coming from database. Please help!
Mohith
Top achievements
Rank 1
 answered on 16 May 2012
1 answer
811 views
Hi,

I generate a dataTable with data form the database and set the datatype of each column. The dataTable is bound to the Grid in the NeedDataSource event. I want to display a CheckBox for every column with datatype "bool". Are GridBoundColumns able to be displayed as checkBox?

Jayesh Goyani
Top achievements
Rank 2
 answered on 16 May 2012
1 answer
88 views
Hello,
I am using RadSlidingPane in my web application. I have 4 RadSlidingPane vertically as shown in attachment. There are 4 tabs chart, navigator, document management and admin. My problem is that if I dock any one tab(for example chart) and click on other tab(for example navigator) then chart is shown in back as truncated. I want that is user click on navigator then chart should not be shown. How can I do this??
Dobromir
Telerik team
 answered on 16 May 2012
1 answer
106 views
I have written a code to add some files to database using grid. But I am unable to get the files in my code. This is my code

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Configuration;
using System.Data;
using Telerik.Web.UI;
using System.IO;
 
public partial class _Default : System.Web.UI.Page
{
    public DataTable table;
    public SqlDataAdapter sqlDataAdapter = new SqlDataAdapter();
    SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["DoraConnectionString"].ConnectionString);
    SqlCommand command = new SqlCommand();
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
 
        }
    }
    protected void RadGrid1_NeedDataSource(object source, Telerik.Web.UI.GridNeedDataSourceEventArgs e)
    {
        command.Connection = conn;
        string selectQuery = "Select * from Files";
        table = new DataTable();
 
        conn.Open();
        try
        {
            //Select Query to populate the RadGrid with data from table Employees.    
            sqlDataAdapter.SelectCommand = new SqlCommand(selectQuery, conn);
            sqlDataAdapter.Fill(table);
            RadGrid1.DataSource = table;
        }
        finally
        {
            //Close the SqlConnection    
            conn.Close();
        }
 
    }
    protected void RadGrid1_ItemCommand(object source, GridCommandEventArgs e)
    {
         
        if (e.CommandName == RadGrid.PerformInsertCommandName)
        {
 
            RadUpload upload = (RadUpload)e.Item.FindControl("RadUpload1");
            foreach (UploadedFile f in upload.UploadedFiles)
            {
                f.SaveAs(Server.MapPath("./" + f.GetName()));
            }
            GridEditFormInsertItem item = (GridEditFormInsertItem)e.Item;
 
            //string EmployeeID = (insertedItem["EmployeeID"].Controls[0] as TextBox).Text;  
 
            string FileName = (item["FileName"].FindControl("RadUpload1") as RadUpload).UploadedFiles[0].GetName();
            UploadedFile file = (item["FileName"].FindControl("RadUpload1") as RadUpload).UploadedFiles[0];
            int Size = (int)file.InputStream.Length;
            string ContentType = GetFileContentType(FileName);
            byte[] bytes = new byte[Size];
            file.InputStream.Read(bytes, 0, (int)file.InputStream.Length);
            DateTime Date = DateTime.Now;
 
            try
            {
                //Open the SqlConnection    
                conn.Open();
                //Update Query to insert into  the database     
                string insertQuery = "INSERT into  Files(FileName,FileData,Size,ContentType,Date) values(@FileName, @FileData,@Size, @ContentType, @Date)";
                command.CommandText = insertQuery;
                command.Connection = conn;
                command.Parameters.AddWithValue("@FileName", FileName);
                command.Parameters.AddWithValue("@FileData", bytes);
                command.Parameters.AddWithValue("@Size", Size);
                command.Parameters.AddWithValue("@ContentType", ContentType);
                command.Parameters.AddWithValue("@Date", Date);
                command.ExecuteNonQuery();
                //Close the SqlConnection    
                conn.Close();
 
 
            }
            catch (Exception ex)
            {
                RadGrid1.Controls.Add(new LiteralControl("Unable to insert Files. Reason: " + ex.Message));
                e.Canceled = true;
            }
        }
        if (e.CommandName == RadGrid.UpdateCommandName)
        {
            GridEditFormItem item = (GridEditFormItem)e.Item;
 
            //string EmployeeID = (insertedItem["EmployeeID"].Controls[0] as TextBox).Text;  
 
            string FileName = (item["FileName"].FindControl("RadUpload1") as RadUpload).UploadedFiles[0].GetName();
            UploadedFile file = (item["FileName"].FindControl("RadUpload1") as RadUpload).UploadedFiles[0];
            int Size = (int)file.InputStream.Length;
            string ContentType = GetFileContentType(FileName);
            byte[] bytes = new byte[Size];
            file.InputStream.Read(bytes, 0, (int)file.InputStream.Length);
            DateTime Date = DateTime.Now;
 
            try
            {
                //Open the SqlConnection    
                conn.Open();
                //Update Query to insert into  the database     
                string insertQuery = "update Files set FileName=@FileName, FileData=@FileData, Size=@Size, ContentType=@ContentType, Date=@Date where ID=@ID";
                command.CommandText = insertQuery;
                command.Connection = conn;
                command.Parameters.AddWithValue("@FileName", FileName);
                command.Parameters.AddWithValue("@FileData", bytes);
                command.Parameters.AddWithValue("@Size", Size);
                command.Parameters.AddWithValue("@ContentType", ContentType);
                command.Parameters.AddWithValue("@Date", Date);
                command.Parameters.AddWithValue("@ID", item.GetDataKeyValue("ID"));
                command.ExecuteNonQuery();
                //Close the SqlConnection    
                conn.Close();
 
 
            }
            catch (Exception ex)
            {
                RadGrid1.Controls.Add(new LiteralControl("Unable to update Files. Reason: " + ex.Message));
                e.Canceled = true;
            }
        }
    }
    protected void RadGrid1_ItemCreated(object sender, GridItemEventArgs e)
    {
        if (e.Item is GridDataItem)
        {
            LinkButton lnk = (e.Item as GridDataItem)["Preview"].Controls[0] as LinkButton;
            lnk.OnClientClick = "Preview(" + (e.Item as GridDataItem).GetDataKeyValue("ID") + "); return false;";
        }
    }
    private string GetFileContentType(string filename)
    {
        string contentType = string.Empty;
 
        int indexOfDot = filename.LastIndexOf(".");
 
        if (indexOfDot > 0)
        {
            ++indexOfDot;
 
            string ext = filename.Substring(indexOfDot, (filename.Length - indexOfDot));
 
            if (!string.IsNullOrEmpty(ext))
            {
                switch (ext.ToLower().Trim())
                {
                    case "doc":
                    case "docx":
                        contentType = "application/msword";
                        break;
 
                    case "pdf":
                        contentType = "application/pdf";
                        break;
 
                    case "xls":
                    case "xlsx":
                        contentType = "application/ms-excel";
                        break;
 
                    case "rar":
                        contentType = "application/winrar";
                        break;
                    case "txt":
                        contentType = "text/plain";
                        break;
                    case "gif":
                        contentType = "image/gif";
                        break;
                    case "jpeg":
                    case "jpg":
                        contentType = "image/jpeg";
                        break;
                    case "png":
                        contentType = "image/x-png";
                        break;
                    case "tif":
                        contentType = "image/tiff";
                        break;
                    case "bmp":
                        contentType = "image/x-ms-bmp";
                        break;
                    default:
                        contentType = "application/octet-stream";
                        break;
                }
            }
        }
        return contentType;
    }
}
Jayesh Goyani
Top achievements
Rank 2
 answered on 16 May 2012
1 answer
138 views
I have upgraded to version Q1 Feb 2012 and now I can't find the RadButton in the toolbox. It's also saying that there is an error when compiling because radbutton is an unknown server tag.I would like to know what to do in this case. I downgrade to 2011 version.
Slav
Telerik team
 answered on 16 May 2012
Narrow your results
Selected tags
Tags
+? more
Top users last month
Rob
Top achievements
Rank 3
Iron
Iron
Iron
Atul
Top achievements
Rank 1
Iron
Iron
Iron
Alexander
Top achievements
Rank 1
Veteran
Iron
Serkan
Top achievements
Rank 1
Iron
Shawn
Top achievements
Rank 1
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Rob
Top achievements
Rank 3
Iron
Iron
Iron
Atul
Top achievements
Rank 1
Iron
Iron
Iron
Alexander
Top achievements
Rank 1
Veteran
Iron
Serkan
Top achievements
Rank 1
Iron
Shawn
Top achievements
Rank 1
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?