Scheduler custom appointment fontimage update issues

0 Answers 16 Views
Scheduler
inLogic
Top achievements
Rank 1
Iron
inLogic asked on 30 Oct 2025, 09:52 AM | edited on 30 Oct 2025, 10:06 AM

Hello,

We are having some issues figuring out why our custom appointments are missing icons(fontimage) whose visibility is controlled by a boolean.

First off, notice the book icon is only showing on the 2nd appointment, when it should be active on the first 3 appointments.

Then after going back and forth a few days without change or updating my list or any items on it we get the following:

The icon is now active on the 1st appointment for the same day, but not active for the 2nd anymore, and still not active for appointment 3.

We have checked the customAppointment and the boolean does get its boolean set to true for the relevant appointments. We do have the Copy and CopyFrom methods covering the boolean.


public bool showHomeworkIcon { get; set; }

public override IAppointment Copy()
{
    var task = new kmdAppointment();
    task.CopyFrom(this);
    return task;
}

public override void CopyFrom(IAppointment other)
{
    var task = other as kmdAppointment;
    if (task != null)
    {
        this.Rooms = task.Rooms;
        this.attachments = task.attachments;
        this.Teachers = task.Teachers;
        this.Description = task.Description;
        this.SubjectCourses = task.SubjectCourses;
        this.IsCancelled = task.IsCancelled;
        this.AppointmentColor = task.AppointmentColor;
        this.AppointmentSecondaryColor = task.AppointmentSecondaryColor;
        this.homeworkList = task.homeworkList;
        this.LessonAssignment = task.LessonAssignment;


        this.hasHomework = task.hasHomework;
        this.startEndString = task.startEndString;
        this.showHomeworkIcon = task.showHomeworkIcon;
        this.showLessonAssignmentIcon = task.showLessonAssignmentIcon;
    }
    base.CopyFrom(other);
}


Our day template uses a radborder with a grid

 <telerik:RadBorder CornerRadius="4"
                    Margin="1"
                    IsClippedToBounds="True"
                    BorderBrush="{Binding Occurrence.Appointment.AppointmentSecondaryColor}"
                    BorderThickness="4,0,0,0"
                    BackgroundColor="{Binding Occurrence.Appointment.AppointmentColor}">
     <Grid RowSpacing="0">
         <Grid.RowDefinitions>
             <RowDefinition Height="auto"></RowDefinition>
             <RowDefinition Height="auto"></RowDefinition>
             <RowDefinition Height="auto"></RowDefinition>
             <RowDefinition Height="*"></RowDefinition>
             <RowDefinition Height="auto"></RowDefinition>
         </Grid.RowDefinitions>
         <Grid.ColumnDefinitions>
             <ColumnDefinition Width="*"></ColumnDefinition>
             <ColumnDefinition Width="Auto"></ColumnDefinition>
             <ColumnDefinition Width="Auto"></ColumnDefinition>
         </Grid.ColumnDefinitions>

<label Grid.Row="0"
Grid.ColumnSpan="3"/> //repeat labels for 1,3 2,3 and 4,3. 3 is * to force the rows below to be near the end.


     <Image  Grid.Row="4"
         Grid.Column="1"
     </Image>

     <Image Grid.Row="4"
                           Grid.Column="2"
                           Margin="4, 0, 4, 4"
                           IsVisible="{Binding Occurrence.Appointment.showHomeworkIcon}">
                        <Image.Source>
                            <FontImageSource FontFamily="Material"
                                             Glyph="{x:Static materialDesign:MaterialDesignIcons.BookOpenBlankVariantOutline}"
                                             Color="{StaticResource BrandPrimary}"
                                             Size="16" />
                        </Image.Source>
      </Image>
  </Grid>
</telerik:RadBorder>

My guess is that the issue lies with the reusing of cells in whatever collectionview you build the appointments on, but I'm not sure.

dotnet sdk is 10.0.100-rc.2.25502.107 & 9.0.306 targeting dotnet 9, workload list says  ios 26.0.10970-net10-rc.2, android 36.0.0-rc.2.332

using Telerik.UI.for.Maui 11.1.0

Didi
Telerik team
commented on 31 Oct 2025, 08:04 AM

Hi,

Based on the description and provided images, it seems the issue is the one we have here: https://feedback.telerik.com/maui/1689884-scheduler-android-ios-appointments-are-not-rendered-accurately-when-scrolling-and-using-template-selector - press the follow button to subscribe to email notifications when there is an update. So when the status changes you will receive email notification. A fix for this issue is expected with the upcoming release, so when the release is live, you can update the maui version and test the fix on your side. 

If this is not the case, send a sample app in which the issue happens. You can open a support ticket, if you do not want to send the app in the forum.

inLogic
Top achievements
Rank 1
Iron
commented on 31 Oct 2025, 12:44 PM | edited

It looks like it could be the same, but i feel it lacks the details to be sure.

I noticed it mostly when switching dates, not necessarily when scrolling up and down, as we try to adjust the timescale to the earliest and latest appointment in the day or 8-16 depending on which timeframe is bigger.

Will still follow and check against the next release.

No answers yet. Maybe you can help?

Tags
Scheduler
Asked by
inLogic
Top achievements
Rank 1
Iron
Share this question
or