Monday 20 December 2010

Add New Item fix for Visual Studio 2005 and Telerik WinForms

If you're someone that still sometimes uses visual Studio 2005, and you are using Telerik Controls for WinForms, then you might have noticed if you add a new item to a project, then it always defaults to a RadForm, no matter what item you choose.

This will be fixed in one of the upcoming releases of the Telerik controls for Winforms but in the meantime, there is an easy way to fix this.

Move all of the files from the following folder (assuming Visual Studio is installed in it's default location):
C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\ItemTemplates\VisualBasic\Windows Forms
to:
C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\ItemTemplates\VisualBasic
Open a Visual Studio 2005 Command Prompt
Use the following command:
devenv /setup
Wait for the command to finish

Wednesday 15 December 2010

Telerik releases Q3 2010 SP1 for WinForms

Just out, the latest SP1 release for Q3 2010 for WiForms. This release has a host of fixes and added functionality for
The Telerik Presentation Framework, RadCommandBar, RadDropDownList, RadListControl, RadGridView, RadMenu, RadApplicationMenu, RadPageView, RadRibbonbar, RadScheduler, RadSchedulerNavigator, RadStatusStrip and Visual Studio Extensions.

Check out the Release Notes or get the Free Trial Version here.

Saturday 11 December 2010

Telerik to add Wizard Control to its collection

For some time I've been using Telerik WinForms controls and they are an intergral part of our software. There are few controls that are missing and Telerik has an aggressive release strategy meaning that the existing controls are updated frequently and new controls are often added.

One of the few controls that I missed though was a decent wizard control. We already use a third party wizard control in our software but with the lack of the familiar theme, it looks a little out of place.

I'm please to see though that Telerik have once again responded and will be providing a Wizard control in Q1 2011 release.

to find out more about the roadmap of Telerik WinForms products have a look at the WinForms RoadMap

Tuesday 7 December 2010

Localize Telerik RadReminder

Like most of the offerings from the Telerik WinForms suite, it is possible to localize the RadReminder. However, this does not seem to be documented at the moment on the Telerik website.

localizing the RadReminder is easy and just like localizing all the other RadControls.

  • Start by creating a descendant of the RadReminderLocalizationProvider class.
  • Override the GetLocalizedString(string id) method and provide a translation for the messages. If a translation is not provided, the default value will be returned. This behavior is guaranteed by the call to the base GetLocalizedString method in the default clause of the switch statement in the example
Public Class MyRadReminderLocalizationProvider
    Inherits Telerik.WinControls.UI.RadReminderLocalizationProvider

    Public Overrides Function GetLocalizedString(ByVal id As String) As String
        Select Case id
            Case RadReminderStringId.AlarmFormButtonDismiss
                Return "Dismiss"
            Case RadReminderStringId.AlarmFormButtonDismissAll
                Return "Dismiss All"
            Case RadReminderStringId.AlarmFormButtonOpenItem
                Return "Open Item"
            Case RadReminderStringId.AlarmFormButtonSnooze
                Return "Snooze"
            Case RadReminderStringId.AlarmFormColumnDueIn
                Return "Due in"
            Case RadReminderStringId.AlarmFormColumnSubject
                Return "Subject"
            Case RadReminderStringId.AlarmFormLabelSnooze
                Return "Click Snooze to be reminded again in:"
            Case RadReminderStringId.AlarmFormReminder
                Return "Reminder"
            Case RadReminderStringId.AlarmFormReminders
                Return "Reminders"
            Case RadReminderStringId.AlarmFormSnoozeEightHours
                Return "8 hours"
            Case RadReminderStringId.AlarmFormSnoozeFifteenMinutes
                Return "15 minutes"
            Case RadReminderStringId.AlarmFormSnoozeFiveMinutes
                Return "5 minutes"
            Case RadReminderStringId.AlarmFormSnoozeFourDays
                Return "4 days"
            Case RadReminderStringId.AlarmFormSnoozeFourHours
                Return "4 hours"
            Case RadReminderStringId.AlarmFormSnoozeHalfDay
                Return "0.5 days"
            Case RadReminderStringId.AlarmFormSnoozeOneDay
                Return "1 day"
            Case RadReminderStringId.AlarmFormSnoozeOneHour
                Return "1 hour"
            Case RadReminderStringId.AlarmFormSnoozeOneMinute
                Return "1 minute"
            Case RadReminderStringId.AlarmFormSnoozeOneWeek
                Return "1 week"
            Case RadReminderStringId.AlarmFormSnoozeTenMinutes
                Return "10 minutes"
            Case RadReminderStringId.AlarmFormSnoozeThirtyMinutes
                Return "30 minutes"
            Case RadReminderStringId.AlarmFormSnoozeThreeDays
                Return "3 days"
            Case RadReminderStringId.AlarmFormSnoozeTwoDays
                Return "2 days"
            Case RadReminderStringId.AlarmFormSnoozeTwoHours
                Return "2 hours"
            Case RadReminderStringId.AlarmFormSnoozeTwoWeeks
                Return "2 weeks"
            Case RadReminderStringId.DueInDay
                Return "day"
            Case RadReminderStringId.DueInDays
                Return "days"
            Case RadReminderStringId.DueInHour
                Return "hour"
            Case RadReminderStringId.DueInHours
                Return "hours"
            Case RadReminderStringId.DueInMinute
                Return "minute"
            Case RadReminderStringId.DueInOverdue
                Return "overdue"
            Case RadReminderStringId.DueInWeek
                Return "week"
            Case RadReminderStringId.DueInWeeks
                Return "weeks"
        End Select
                Return MyBase.GetLocalizedString(id)
    End Function

End Class


To apply the custom localization provider, instantiate and assign it to the current localization provider:

RadReminderLocalizationProvider.CurrentProvider = New MyRadReminderLocalizationProvider()

Wednesday 1 December 2010

Telerik to provide WinForms Rich Text Editor Control

Telerik are to add to it's great suite of RadControls for WinForms a Rich Text Editor. Currnetly, they soliciting feedback on what features you would like to see from a Telerik WinForms Rich Text Editor.

If you're interested in seeing the industry leading component development company add this new product to the list of WinForms controls, then you can open a new support ticket with subject RichTextEditor, and send your responses of the following questions (feel free to extend these, if needed):
  1. What format would you like to save the content in (HTML, XAML, XML, DOC, DOCX, etc)?
  2. Will you need exporting functionality? If yes, what export formats will you need in your apps?
  3. What advanced editing features will you need (for example table support, image support, etc)?
  4. What is the main purpose of such a tool that you will need? For example, will you be editing documents, producing PDFs for archives, exporting data in other formats?
  5. Do you plan to integrate the rich text editor with another product (such as reporting, CRM, etc)? If yes, we will appreciate it if you give us more details about your needs.
  6. What other products have you used and what you like and dislike about them?
  7. How would you feel if we use DirectWrite (this will require Vista SP2+ or Win7). How many of your customers are still using WinXP?
  8. Would you prefer to use the new Ribbon interface, or the older menu/toolstrip setup?
I'll look forward to seeing this added to the controls.

Tuesday 23 November 2010

Telerik RadCommandBar gets Load and Save Layout functionality

Those people over at Telerik have recently released the new Q3 Version for WinForms. In it there's some quite funky stuff as well as a whole new control called the RadCommandBar.

The RadCommandBar is the toolbar replacement for the RadToolStrip and has some additional features. But the one I'm looking at here is the ability to Load and Save the layout.

As the RadCommandBar allows a user to add and remove the items on the RadCommandBar (just like a Microsoft Office toolbar for example) and grab the ToolStrip rows and re-arrange them, you may want to save these preferences so that the next time the user launches your form, all the layout preferences of the RadCommandBar are as they left them.

Even though the RadCommandBar is new to the Telerik suite of WinForms controls, the documentation is pretty good, though this little documented feature is a real gem and very easy to use.

So, let's say you want to load the layout of a RadCommandBar on launching your form, simply write in the Form Load event

If My.Computer.FileSystem.FileExists("C:\MyCommandBar.xml") Then
          Me.RadCommandBar1.CommandBarElement.LoadLayout("C:\MyCommandBar.xml")
End If


Then when you close the form for exmaple:

Me.RadCommandBar1.CommandBarElement.SaveLayout("C:\MyCommandBar.xml")


It couldn't be much easier. Take a look at the overall feature of the RadCommandBar here.

Thursday 18 November 2010

What am I doing?

What am I doing? I don't know what made me start a blog now, or as yet what I'm going to blog about but for some reason I had the urge to start one.

Just recently, I've been spending many of my evenings sitting at my new laptop. My partner, upstairs preparing work, I thought that doing something constructive would be better than watching yet another episode of Top Gear on Dave (sorry Jeremy. I love you and your Hamster and Slow, but there are only so many re-runs I can take).

So, being a programmer, and a big fan of the Telerik components that we use in our daily development, I thought I'd start trying to help out in the Telerik Forums and submitting Code Library articles. There was no aim at first other than filling a couple of hours, but I quickly became quite taken with it.

Maybe you think this is a little sad, but I can tell you, it has huge benefits for more than just the people that I'm trying to answer questions for.

First off, yes, there's the satisfaction of having a response marked as answer by another fellow developer who needed help. My own knowledge of the products has rocketed, and this helps in my daily life at work. I also end up earning Telerik points for my company which means that we are now on track to get huge discounts on new products. It keeps me thinking of programming too. Some may say this is bad, but I really love it.

So, I want to thank Telerik for giving me some extra motivation. And, if you're a .NET prgrammer too, I'd suggest having a look at the Telerik controls.