Telerik Forums
UI for ASP.NET AJAX Forum
1 answer
479 views

I want the user to choose the desired chart type (bar or line).  In my code I am generating the chart and the only difference is in either creating the series with a ColumnSeries or a LineSeries. How do I declare the variable cs to use either type.

I tried defining cs as an Object but then to use it with the properties it needs to be casted but the type could be either.

 

if (RadComboBoxChartType.SelectedValue=="Bar")
   cs = new ColumnSeries();
else
   cs = new LineSeries();
 
cs.Name = row["Description"].ToString();
cs.Appearance.FillStyle.BackgroundColor = generator.NextColor();
cs.TooltipsAppearance.ClientTemplate = "#= series.name# : #= dataItem.value#";
cs.LabelsAppearance.Visible = false;
RadHtmlChartDashboard.PlotArea.Series.Add(cs);

 

 

Vessy
Telerik team
 answered on 12 Mar 2019
10 answers
284 views
I would like to replace the standard RadMenu mobile button icon (the three bars from RenderMode="mobile") with a custom image.

Is this possible?
Peter Milchev
Telerik team
 answered on 12 Mar 2019
1 answer
647 views

Hello,

 

I am having trouble in increasing the size of the button. I did change the height and color options in the css file but it does nto change. I attached a image to this email which shows the button. How can i increase the size of this button?

 

<telerik:RadAsyncUpload runat="server" ID="RadAsyncUpload1" AllowedFileExtensions="pdf,jpg,jpeg,txt"
                                       MultipleFileSelection="Automatic"  CssClass="wizInternalLabels" dir="rtl"
                                       PostbackTriggers="btnCustomFinish"  >
                                       <Localization Select=" Select a document to upload "   />
                                        
                                   </telerik:RadAsyncUpload>

 

.ruButton.ruBrowse
{
min-width:500px;
font-size:18px;
    color:Red;
font-weight:bold;
height:100px;
}

 

.wizInternalLabels
{
color:#00008B;
font-size:x-large;
height:200px;
}

 

 

Thanks in Advance

Peter Milchev
Telerik team
 answered on 12 Mar 2019
7 answers
323 views

In my database I have a column called "Current_Due" which is set as a numeric datatype (Oracle).  When I autogenerate my grid, the column is being typed as a GridBoundColumn instead of a GridNumericColumn. 

1.)  Do I need to change something to have it bind as a different column type?

2.)  In my RadGrid1_ColumnCreated event, I try to cast it as a GridNumericColumn and get an error.  Anyone know how to cast as a different column type?  I'm doing - GridNumericColumn numericColumn = e.Column as GridNumericColumn;

 

 

Eyup
Telerik team
 answered on 12 Mar 2019
3 answers
614 views

Hi,

I have a RadGrid with filters. The FilterType is "HeaderContext".
I have restricted the filter options contained in the drop down list according to the field type.
For example, for a numeric field, I use options "GreaterThan", "LessThan"  etc. For a string, I use options "Contains", "StartsWith" etc.

To achieve this, I use the following:

<ClientSettings>
                    <Scrolling AllowScroll="false" />
                    <ClientEvents OnFilterMenuShowing="FilterMenuShowing" />
                </ClientSettings>
                <FilterMenu EnableImageSprites="False" OnClientShowing="MenuShowing" />

However, these events are not invoked when the value RadGrid's FilterType is "HeaderContext".
This means that for each data type, the filter option drop down list contains all options, many of which are irrelavant.

Please can you offer some assistance that will enable me to restrict the filter options contained in the DropDownList where the FilterType of the RadGrid is "HeaderContext".

 

Thanks,

 

Rob

Attila Antal
Telerik team
 answered on 12 Mar 2019
2 answers
144 views
Hello,

I've sound some other discussions in the forum on not posting back with a client search, but, I'd like it to leave the drop down open. This happens if the client search function throws an error, so I feel like there should be a way to tell it to cancel and not close the results box. Here's what I have right now:

function txtAutoSearch_Search(sender, args) {
    if (args.get_value() == null) {
        sender._element.control._postBackOnSearch = false;
    } else {
        sender._element.control._postBackOnSearch = true;
    }
}

This actually works very nicely as a way to make it so that, if they haven't selected a result, it won't post back. But, when people hit "enter", the results still close, and that confuses some folks. Is there a way to safely cancel the post and leave the box open? Basically, some line I could add after the "_postBackOnSearch = false;" bit?

Thanks,

Mike

Kasim
Top achievements
Rank 2
 answered on 12 Mar 2019
0 answers
194 views

I am trying to prevent users from creating overlapping events in our calendar.  I was able to implement this somewhat successfully using the demo at https://demos.telerik.com/aspnet-ajax/scheduler/examples/limitconcurrentappointments/defaultvb.aspx.  I am having an issue though due to the fact that we use a customized Advanced Form template for our events.  On insert or update, I can use the ExceedsLimit() function to cancel the insert or update, but the Advanced Form is cleared out and loses all of the information the user has entered.  Ideally we would present the user with an error message and allow them to fix the data rather than having to enter it all over from scratch.  Is this possible?

I updated the Advanced Insert and Edit Forms demo located at https://demos.telerik.com/aspnet-ajax/scheduler/examples/advancedformtemplate/defaultvb.aspx to demonstrate the issue.

DefaultVB.aspx

<%@ Page Language="vb" AutoEventWireup="true" Inherits="Scheduler.Examples.AdvancedFormTemplate.DefaultVB"
    CodeFile="DefaultVB.aspx.vb" MasterPageFile="~/MasterPageCDNDisabled.master" %>
 
<%@ Register TagPrefix="sds" Namespace="Telerik.Web.SessionDS" %>
<%@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %>
<%@ Register TagPrefix="scheduler" TagName="AdvancedForm" Src="AdvancedFormCS.ascx" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="Server">
    <link rel="Stylesheet" type="text/css" href="styles.css" />
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceholder1" runat="Server">
    <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server">
        <AjaxSettings>
            <telerik:AjaxSetting AjaxControlID="RadScheduler1">
                <UpdatedControls>
                    <telerik:AjaxUpdatedControl ControlID="RadScheduler1" LoadingPanelID="RadAjaxLoadingPanel1" />
                </UpdatedControls>
            </telerik:AjaxSetting>
        </AjaxSettings>
    </telerik:RadAjaxManager>
    <telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server" />
    <telerik:RadScriptBlock runat="Server" ID="RadScriptBlock1">
        <script type="text/javascript" src="scripts.js"></script>
    </telerik:RadScriptBlock>
    <telerik:RadNotification runat="server" ID="RadNotification1" Title="Error" TitleIcon="warning" ContentIcon="warning"
        Position="Center" Width="430px" Height="200px" AutoCloseDelay="10000" ShowSound="warning" Font-Size="Large">
        <NotificationMenu Visible="false"></NotificationMenu>
    </telerik:RadNotification>
    <div class="demo-container no-bg">
        <telerik:RadScheduler RenderMode="Lightweight" runat="server" ID="RadScheduler1"
            SelectedDate="2012-04-16"
            OnDataBound="RadScheduler1_DataBound"
            OnAppointmentCreated="RadScheduler1_AppointmentCreated"
            OnAppointmentInsert="RadScheduler1_AppointmentInsert"
            OnAppointmentDataBound="RadScheduler1_AppointmentDataBound"
            OnClientFormCreated="schedulerFormCreated"
            CustomAttributeNames="AppointmentColor"
            EnableDescriptionField="true">
            <AdvancedForm Modal="true" EnableTimeZonesEditing="true" />
            <Reminders Enabled="true" />
            <AppointmentTemplate>
                <div class="rsAptSubject">
                    <%# Eval("Subject") %>
                </div>
                <%# Eval("Description") %>
            </AppointmentTemplate>
            <AdvancedEditTemplate>
                <scheduler:AdvancedForm runat="server" ID="AdvancedEditForm1" Mode="Edit"
                    Subject='<%# Bind("Subject") %>'
                    Description='<%# Bind("Description") %>'
                    Start='<%# Bind("Start") %>'
                    End='<%# Bind("End") %>'
                    RecurrenceRuleText='<%# Bind("RecurrenceRule") %>'
                    Reminder='<%# Bind("Reminder") %>'
                    AppointmentColor='<%# Bind("AppointmentColor") %>'
                    UserID='<%# Bind("User") %>'
                    RoomID='<%# Bind("Room") %>'
                    TimeZoneID='<%# Bind("TimeZoneID") %>' />
            </AdvancedEditTemplate>
            <AdvancedInsertTemplate>
                <scheduler:AdvancedForm runat="server" ID="AdvancedInsertForm1" Mode="Insert"
                    Subject='<%# Bind("Subject") %>'
                    Start='<%# Bind("Start") %>'
                    End='<%# Bind("End") %>'
                    Description='<%# Bind("Description") %>'
                    RecurrenceRuleText='<%# Bind("RecurrenceRule") %>'
                    Reminder='<%# Bind("Reminder") %>'
                    AppointmentColor='<%# Bind("AppointmentColor") %>'
                    UserID='<%# Bind("User") %>'
                    RoomID='<%# Bind("Room") %>'
                    TimeZoneID='<%# Bind("TimeZoneID") %>' />
            </AdvancedInsertTemplate>
            <TimelineView UserSelectable="false" />
            <TimeSlotContextMenuSettings EnableDefault="true" />
            <AppointmentContextMenuSettings EnableDefault="true" />
        </telerik:RadScheduler>
    </div>
 
</asp:Content>

 

DefaultVB.aspx.vb

Imports System
Imports System.Web.UI
Imports System.Drawing
Imports System.Web.UI.WebControls
 
Imports Telerik.Web.UI
 
Namespace Scheduler.Examples.AdvancedFormTemplate
    Public Class DefaultVB
        Inherits System.Web.UI.Page
 
        Private Const ProviderSessionKey As String = "Telerik.Web.Examples.Scheduler.AdvancedFormTemplate.DefaultVB"
 
        ' You can safely ignore this method.
        ' Its purpose is to limit the changes to the underlying data only to the active user session.
        Protected Sub Page_Init(ByVal sender As Object, ByVal e As EventArgs)
 
            Dim manager As ScriptManager = RadScriptManager.GetCurrent(Page)
            manager.Scripts.Add(New ScriptReference(ResolveUrl("AdvancedForm.js")))
 
            Dim provider As XmlSchedulerProvider
            If ((Session(ProviderSessionKey) Is Nothing) _
               OrElse Not IsPostBack) Then
                provider = New XmlSchedulerProvider(Server.MapPath("~/App_Data/Appointments_CustomTemplates.xml"), False)
                Session(ProviderSessionKey) = provider
            Else
                provider = CType(Session(ProviderSessionKey), XmlSchedulerProvider)
            End If
            RadScheduler1.Provider = provider
        End Sub
 
        Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
            RadScheduler1.TimeZoneID = "Pacific Standard Time"
        End Sub
 
        Protected Sub RadScheduler1_DataBound(ByVal sender As Object, ByVal e As EventArgs)
            RadScheduler1.ResourceTypes.FindByName("User").AllowMultipleValues = True
            RadScheduler1.ResourceTypes.FindByName("Room").AllowMultipleValues = False
        End Sub
 
        Protected Sub RadScheduler1_AppointmentCreated(ByVal sender As Object, ByVal e As AppointmentCreatedEventArgs)
            If e.Appointment.RecurrenceState = RecurrenceState.Master OrElse e.Appointment.RecurrenceState = RecurrenceState.Occurrence Then
                Dim recurrenceStateDiv As New Label()
                recurrenceStateDiv.CssClass = "rsAptRecurrence"
                Dim recurrenceStateIcon As New Label()
                recurrenceStateIcon.CssClass = "t-font-icon t-i-recurrence"
                recurrenceStateDiv.Controls.Add(recurrenceStateIcon)
                e.Container.Controls.AddAt(0, recurrenceStateDiv)
            End If
            If e.Appointment.RecurrenceState = RecurrenceState.Exception Then
                Dim recurrenceStateDiv As New Label()
                recurrenceStateDiv.CssClass = "rsAptRecurrenceException"
                Dim recurrenceStateIcon As New Label()
                recurrenceStateIcon.CssClass = "t-font-icon t-i-recurrence-exception"
                recurrenceStateDiv.Controls.Add(recurrenceStateIcon)
                e.Container.Controls.AddAt(0, recurrenceStateDiv)
            End If
        End Sub
 
        Protected Sub RadScheduler1_AppointmentDataBound(ByVal sender As Object, ByVal e As SchedulerEventArgs)
            Dim colorAttribute As String = e.Appointment.Attributes("AppointmentColor")
            If Not String.IsNullOrEmpty(colorAttribute) Then
                Dim colorValue As Integer
                If Integer.TryParse(colorAttribute, colorValue) Then
                    Dim borderColorValue As Integer = CInt(If(colorValue < -&H7F7F7F, colorValue + &H202020, colorValue - &H202020))
                    e.Appointment.BackColor = Color.FromArgb(colorValue)
                    e.Appointment.BorderColor = Color.FromArgb(borderColorValue)
                End If
            End If
            e.Appointment.ToolTip = e.Appointment.Subject + ": " + e.Appointment.Description
        End Sub
 
        Protected Sub RadScheduler1_AppointmentInsert(sender As Object, e As SchedulerCancelEventArgs)
            If ExceedsLimit(e.Appointment) Then
                e.Cancel = True
                RadNotification1.Show("Cannot add appointment! There are too many appointments in this time slot. You can only have " & AppointmentsLimit)
            End If
        End Sub
 
        Private Const AppointmentsLimit As Integer = 1
 
        Private Function ExceedsLimit(apt As Appointment) As Boolean
            Dim appointmentsCount As Integer = 0
            For Each existingApt As Appointment In RadScheduler1.Appointments.GetAppointmentsInRange(apt.Start, apt.[End])
                If existingApt.Visible Then
                    appointmentsCount += 1
                End If
            Next
 
            Return (appointmentsCount > AppointmentsLimit - 1)
        End Function
    End Class
End Namespace
Michael
Top achievements
Rank 1
 asked on 11 Mar 2019
11 answers
674 views
Hello,

A while back I was using the normal RadChart and not the HTML version.  Once the HTML version came out I switched everything over to it and have been pretty happy.  Recently I have come across the problem where I have too many labels on the pie chart (i.e. there are many items that are 2% or less making up the chart) which makes the chart look pretty messy.

In the normal RadChart there was a way to hide the labels on the databind event if the value of the dataitem was less than a certain percentage.  However, I cannot seem to find a way to do this with the HTML chart.

Does anyone have an example how I can hide label that are less than a certain percentage on the HTML pie chart?

Thanks,.
Ron
Vessy
Telerik team
 answered on 11 Mar 2019
9 answers
1.2K+ views
I had added a RequiredFieldValidator to dropdownlist that make sure user had selected value before insert to db. but the checking is not working that will not prompt error message.

<telerik:RadDropDownList ID="rdl_bu" runat="server" DataSourceID="LDS_BU" DefaultMessage="Please select..."
 DataValueField="BU_ID" DataTextField="BU_name" AutoPostBack="true" >
</telerik:RadDropDownList>
    <asp:RequiredFieldValidator ID="RequiredFieldValidator11" runat="server" ControlToValidate="rdl_bu"
         InitialValue="Please Select..." ErrorMessage="Please select a Business Unit."></asp:RequiredFieldValidator>
Attila Antal
Telerik team
 answered on 11 Mar 2019
12 answers
646 views
Hi

The upload controls (buttons) don't render sometimes. It happens a couple of times and then works after a while.
I'm using 2012.3.1308.35.
Any idea what the causes may be?
Peter Milchev
Telerik team
 answered on 11 Mar 2019
Narrow your results
Selected tags
Tags
+? more
Top users last month
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
Sergii
Top achievements
Rank 1
Iron
Iron
Dedalus
Top achievements
Rank 1
Iron
Iron
Lan
Top achievements
Rank 1
Iron
Doug
Top achievements
Rank 1
Want to show your ninja superpower to fellow developers?
Top users last month
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
Sergii
Top achievements
Rank 1
Iron
Iron
Dedalus
Top achievements
Rank 1
Iron
Iron
Lan
Top achievements
Rank 1
Iron
Doug
Top achievements
Rank 1
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?