
I've got a lot of images I need to load in from a directory into a project where I display a full-screened radrotator on a secondary monitor. I want to be able to show a slideshow of pictures, but I need them to properly fit the screen, and I'd like ones that are strange sizes to be horizontally and vertically centered. All of this seems to be working with my code so far except the centering part...
Here is my code:
Imports System.Windows.FormsImports Telerik.WinControls.UIImports System.IOImports System.Security.CryptographyPublic Class formSlideshow Private Sub ShapedForm1_Load(sender As Object, e As EventArgs) Handles Me.Load Me.FormBorderStyle = FormBorderStyle.None Me.Bounds = GetSecondaryScreen().Bounds Dim screensize As New Drawing.Size(Me.Width, Me.Height) RadRotator1.Size = screensize RadRotator1.Interval = (CInt(Val(formSettings.Interval)) * 1000) If LoadImages() = True Then RadRotator1.Start() End Sub '--Get size and location of secondary monitor Public Function GetSecondaryScreen() As System.Windows.Forms.Screen For Each windowscreen As System.Windows.Forms.Screen In System.Windows.Forms.Screen.AllScreens If Not windowscreen Is System.Windows.Forms.Screen.PrimaryScreen Then Return windowscreen End If Next Return Screen.PrimaryScreen End Function '--Load images into radRotator Public Function LoadImages() As Boolean Try Dim imageslist As New List(Of String) '--Get employees personal images For Each employeeimage As String In Directory.GetFiles(formSettings.EmployeeDir) If Path.GetExtension(employeeimage) = ".jpeg" Or Path.GetExtension(employeeimage) = ".png" Or Path.GetExtension(employeeimage) = ".jpg" Then imageslist.Add(employeeimage) End If Next '--Get default images For Each defaultimage As String In Directory.GetFiles(formSettings.DefaultDir) If Path.GetExtension(defaultimage) = ".jpeg" Or Path.GetExtension(defaultimage) = ".png" Or Path.GetExtension(defaultimage) = ".jpg" Then imageslist.Add(defaultimage) End If Next '--Randomize order of images imageslist.Sort(New Randomizer(Of String)()) '--Add images to radRotator item list For Each imagefile As String In imageslist Dim newimage As Image = Image.FromFile(imagefile) Dim rotatoritem As New RadImageItem() rotatoritem.Image = ScaleImage(newimage, 768, 1366) RadRotator1.Items.Add(rotatoritem) Next Return True Catch ex As Exception Return False End Try Return False End Function '--Shrink images to fit screen, proportionately Public Function ScaleImage(ByVal OldImage As Image, ByVal TargetHeight As Integer, ByVal TargetWidth As Integer) As System.Drawing.Image Try Dim NewHeight As Integer = TargetHeight Dim NewWidth As Integer = NewHeight / OldImage.Height * OldImage.Width If NewWidth > TargetWidth Then NewWidth = TargetWidth NewHeight = NewWidth / OldImage.Width * OldImage.Height End If Return New Bitmap(OldImage, NewWidth, NewHeight) Catch ex As Exception Return Nothing End Try Return Nothing End FunctionEnd ClassPublic Class Randomizer(Of T) Implements IComparer(Of T) '--Insures different instances are sorted in different orders Private Shared Salter As New Random() '--Only as random as your seed Private Salt As Integer Public Sub New() Salt = Salter.Next(Integer.MinValue, Integer.MaxValue) End Sub Private Shared sha As New SHA1CryptoServiceProvider() Private Function HashNSalt(ByVal x As Integer) As Integer Dim b() As Byte = sha.ComputeHash(BitConverter.GetBytes(x)) Dim r As Integer = 0 For i As Integer = 0 To b.Length - 1 Step 4 r = r Xor BitConverter.ToInt32(b, i) Next Return r Xor Salt End Function Public Function Compare(x As T, y As T) As Integer _ Implements IComparer(Of T).Compare Return HashNSalt(x.GetHashCode()).CompareTo(HashNSalt(y.GetHashCode())) End FunctionEnd Class
Hi,
I would use RadScheduler in an application to show and edit work shifts. I'm using Telerik Q2 2015, Visual Studio 2013.
My question is, is it possible to somehow add some UI controls (labels, check boxes, buttons etc.) to the appointment (e.g by inheriting an own appointment class), so that the user would be able to do some edit actions on the appointment straight away without opening any appointment edit dialog?
Regards,
Pirjo

If I have a row with columns marked as read only and try to paste to it, the column will be skipped causing an undesired behavior. Is this a bug? Is there a workaround for this? I have attached screen shots demonstrating the behavior. Notice that my last column is blank after the paste.

Hi,
I will start with my issues
I have a gridview(gPackageNotes) and txtbox(txtPackageNote) in my winform
Please check my query in the attactment.
Thanks
Regards
Ramraj

I use an AutoCompleteBox in conjunction with a List<T> returned from a WCF service that uses Linq to retrieve suggested items based on a number of criteria. I only allow the selection of one complete token item whose value ultimately gets entered into a database table. This works as expected. My question is on the flip side, when I load an entity, I want to take the value that was written into the database and create the token setting the value and text properties and set it.
I tried the Items property, but that is read-only. Cant find anything obvious in the documentation either.

Hey,
is there any documentation about the "StringFormat" property used by the PropertyAggregateDescription?
Only useful resource i found was for Kendo UI (http://docs.telerik.com/kendo-ui/framework/globalization/numberformatting​).
I have no clue how to set the Format to n0 and add a postfix string (the result should look like 10,045 FOO$). I've tried "n0 'FOO$'", but it keeps ignoring the n (so i dont get any separators). "0 'FOO$'" works, but does not give me the desired number format.
Cheers,
Jens

Since GridView.ClearSelection Method is totaly crap(See attached file: NoSelectionFormatting.png)
i need to handle the rowformatting and cellformattiong when no Selection on gridview is done.
Removing the Backcolor was not the problem. But now i need to get the Default Border Color for GridViewCells and GridViewRows when its not selected.(See attached file: NoSelectionFormattingV1.png)
I am using Windows8 Theme in my application but this could be different for other customers, so i tried to get the Theme for the Current Theme like that:
Dim theme As Theme = ThemeResolutionService.GetTheme(ThemeResolutionService.ApplicationThemeName)
Just for testing if the Propertys exists that i need i implemented the following code:
Dim styleGroup As StyleGroup = theme.FindStyleGroup("Telerik.WinControls.UI.RadGridView")For Each propertyGroup In styleGroup.PropertySettingGroups For Each setting In propertyGroup.PropertySettings Select Case setting.Name Case "BorderColor" e.RowElement.BorderColor = setting.Value Case "BorderColor2" e.RowElement.BorderColor2 = setting.Value Case "BorderColor3" e.RowElement.BorderColor3 = setting.Value Case "BorderColor4" e.RowElement.BorderColor4 = setting.Value End Select NextNextBut the BorderColor was never set to the default.
Thanks for any help.
The problem is described here:
http://www.telerik.com/support/kb/winforms/details/radgridview-crud-in-object-relational-hierarchy-mode
Due to performance considerations, the RadGridView bound to an object-relational hierarchy supports CRUD operations only for its first level.
I don't want performance but I need to write at less as possible code to achieve this. Performance isn't an issue if I can ignore manually handling of operations for next levels.
Also another related question is that does ASP.NET RadGridView act like WinForms or it can support unlimited level of CRUD operations ?
