C1 Community
ComponentOne Community is a free source for developers and help authors to collaborate and communicate.

Few questions about the schedular

rated by 0 users
This post has 7 Replies | 1 Follower

Top 500 Contributor
Posts 12
ruthwe Posted: Mon, Mar 23 2009 11:18 AM

1.My scheduler shows  the time in a format of hh:mm AM/PM, how can I change it to show 24 hours format?

2. The scheduler is loaded very slowly, even when there are no appointments (that's why I know it's not a  code problem). Does someone have an idea why?

3. When the user updated an appointment time  by dragging it to a different time slot  in the scheduler ,I am checking if the update is legal according to my application roles and if not I am canceling the user changes. What happens is that the appointment disappears from the scheduler , even though that  In the AppointmentStorage the appointment exists!

Thanks

,

 

Top 25 Contributor
Posts 554
C1_IrinaP replied on Tue, Mar 24 2009 9:04 AM
First of all, make sure that you use the latest version:
http://prerelease.componentone.com/dotnet30/c1wpfschedule/2009-t1/C1WPFScheduler_3.0.20091.76.zip.
Then, attach here the simple sample, reproducing the problem.

> 1.My scheduler shows the time in a format of hh:mm AM/PM, how can I change it to show
> 24 hours format?
with the current version you have to change DataTemplate with
"C1Scheduler_TimeRuler_Template" key:

- find original template in the source xaml;
- copy it into Scheduler resources;
- correct whatever you want - change converters, converter parameters...

You can find the sample here: http://helpcentral.componentone.com/CS/forums/t/77997.aspx
(CustomUIElements).
Top 500 Contributor
Posts 12
Attached is a small project that loads and unloads scheduler.The project writes to a file c:\testScedular.txtand you can see that the first load always takes more than the second load.In the small application the difference is a second

but in a larger application where I use the scheduler the first load takes sometimes  more than a minute.

Thanks.

 

Top 25 Contributor
Posts 554
C1_IrinaP replied on Sun, Jun 28 2009 12:32 PM
First of all, take the latest version and try with it:
http://prerelease.componentone.com/dotnet30/c1wpfschedule/2009-t2/C1WPFScheduler_3.0.20092.85.zip

This version should load faster.

Next, use Stopwatch to measure time accurately. Something like that:

Stopwatch stop = new Stopwatch();
stop.Start();
ucScedular uc = new ucScedular();
stkPanel.Children.Add(uc);
stop.Stop();
MessageBox.Show("loading took " + stop.ElapsedMilliseconds + "
milliseconds");

Please, let me know about results.
Top 500 Contributor
Posts 12
ruthwe replied on Tue, Jun 30 2009 3:24 AM
I have tried to take the latest version but it doesn't seem to help. the loading time is 709 milliseconds the first time and 190 milliseconds the second time. In my big application where the scheduler has extra properties like c1sched:NestedPropertySetter the difference between the first loading and the following loadings is bigger The first loading takes 1107 milliseconds The second one takes only 64 milliseconds
Top 25 Contributor
Posts 554
C1_IrinaP replied on Tue, Jun 30 2009 7:50 AM
> The first loading takes 1107 milliseconds The second one takes only 64
> milliseconds
Well, in a big application, first loading takes about 1 second. Is that
better than "more than a minute" (you wrote about that before)?

At first loading Scheduler invalidates license information. It's the only
difference between first and second loadings in a scheduler behavior.
Do you use licensed control?

One more thing. In a ctor of your ucScedular class, you change some
scheduler properties:
sce1.Style = sce1.OneDayStyle;
sce1.SelectedDateTime = DateTime.Today;
In this case, at every loading scheduler UI updates 2 times.

Wrap all these changes into sce1.BeginUpdate() and sce1.EndUpdate():
sce1.BeginUpdate();
sce1.Style = sce1.OneDayStyle;
sce1.SelectedDateTime = DateTime.Today;
sce1.EndUpdate();

Check your big application. If you change several C1Scheduler properties at
once, always wrap this code into BeginUpdate/EndUpdate calls.
Top 500 Contributor
Posts 12
ruthwe replied on Tue, Jun 30 2009 10:40 AM
First of all thanks for the helpI use licensed control.The problem is that the loading even now takes sometimes over a second,And when I install it in my client's computer it takes very long time to load ' and it looks as if the application got stuck

Do you know why invalidating license information takes more time in one computer and less in other?

 

Top 25 Contributor
Posts 554
C1_IrinaP replied on Tue, Jun 30 2009 11:12 AM

> Do you know why invalidating license information takes more time in one computer and less in other?

It can't take more time. If you build your application on machine with valid license installed, run-time license gets embedded into application resources. Run-time license check doesn't look in registry etc., it looks at application manifest only.

I think you should make some research regarding client machine settings.

Check the next:

- does .Net Framework 3.5 SP1 installed? It contains some performance improvements.
- is PresentationFontCache enabled?
- is there firewall or antivirus software running?
- run your test application several times and compare times at first start and at subsequent starts;
- compare overall performance of working and client machines (graphics card characteristics make sense as well).

Page 1 of 1 (8 items) | RSS
Contact ComponentOne: 1.800.858.2739 ©1987-2009 ComponentOne LLC All Rights Reserved.