Unplanned
Last Updated: 22 Jan 2025 08:10 by Peter
Scroll performance is slow when filtering is applied.
Unplanned
Last Updated: 21 Jan 2025 14:56 by ADMIN
Currently, the RadMap control does not allow localizing the text in the vector tiles. We could include such support.
Unplanned
Last Updated: 21 Jan 2025 11:00 by Stenly
Currently, the RadVirtualGrid control does not provide the functionality to copy the column headers as the RadGridView does. We can extend the copy functionality to contain such behavior.
Unplanned
Last Updated: 21 Jan 2025 10:32 by Gabriel

This was reported in the Code11 and Code39 symbologies.

In the old RadBarcode39 and RadBarcode11 controls the minimum width where the barcode cannot be read any longer is around 180px in the specific scenario. 

In the new RadBarcode and its Code11 and Code39 symbologies, the minimum width is different - around 270px. This reproduces when the SizingMode of the symbology is set to Stretch.

To work this around, you can set the SizingMode of the symbology to Snap. Or alternatively, you can use a bigger Width value for the barcode control, and then apply a ScaleTransform to resize it to the smaller size.

private void RadBarcode_Loaded(object sender, RoutedEventArgs e)
{
    var barcode = (RadBarcode)sender;
    var desiredWidth = 250;
    double relativeWidthDelta = desiredWidth / barcode.ActualWidth;
    barcode.LayoutTransform = new ScaleTransform() { ScaleX = relativeWidthDelta };
}

Unplanned
Last Updated: 20 Jan 2025 10:34 by ADMIN
Nested tables with empty cells are not correctly imported. 
Unplanned
Last Updated: 20 Jan 2025 10:26 by Ivan
DropMarker/Caret size doesn't account for document zoom/scale level. When the dragging text with 50% scale the care is still at 100%.
Unplanned
Last Updated: 17 Jan 2025 17:18 by Stenly
Opening a context menu on an image that is added on a page, which is not the first one, is displayed at the top of the control and not on the image.
Unplanned
Last Updated: 17 Jan 2025 12:02 by Vladimir

When the RadScheduleView has a recurring appointment with no end date for its recurrence in certain scenarios multiple errors can be try/catch-ed internally, which leads to a degraded performance. One such scenario is when a recurring appointment with no end date starts before the currently displayed time period, but does not have any occurrences before the displayed time period.

As a workaround, an end date can be added to the recurrence rule of recurring appointments.

Unplanned
Last Updated: 15 Jan 2025 15:28 by Martin Ivanov

ArgumentException is thrown on mouse up, after using the DrawTool or ShapeTool in RadImageEditor or RadImageEditorUI.

The exception message is: "'∞' is not a valid value for property 'Width'."

The stacktrace is:

System.ArgumentException: '8' is not a valid value for property 'Width'.
   at System.Windows.DependencyObject.SetValueCommon(DependencyProperty dp, Object value, PropertyMetadata metadata, Boolean coerceWithDeferredReference, Boolean coerceWithCurrentValue, OperationType operationType, Boolean isInternal)
   at System.Windows.DependencyObject.SetValue(DependencyProperty dp, Object value)
   at Telerik.Windows.Media.Imaging.Commands.DrawCommand.Execute(RadBitmap source, Object context)
   at Telerik.Windows.Media.Imaging.History.ImageHistory.Execute(IImageCommand command, Object context)
   at Telerik.Windows.Controls.RadImageEditor.ExecuteCommand(IImageCommand command, Object context)
   at Telerik.Windows.Controls.RadImageEditor.CommitTool(Boolean executeSameToolAfterCommit)
   at Telerik.Windows.Media.Imaging.Tools.DrawToolBase.InvokeEndDraw(Point point)
   at Telerik.Windows.Media.Imaging.Tools.DrawToolBase.DrawingCanvas_MouseLeftButtonUp(Object sender, MouseButtonEventArgs e)

To work this around, you can create a custom DrawCommand based on the code from the default one and then replace it in the ShapeTool and DrawTool.

public class CustomDrawTool : DrawTool
{
    public override IImageCommand GetCommand()
    {
        return new CustomDrawCommand();
    }
}

public class CustomShapeTool : ShapeTool
{
    public override IImageCommand GetCommand()
    {
        return new CustomDrawCommand();
    }
}

public class CustomDrawCommand : IImageCommand
{
    public RadBitmap Execute(RadBitmap source, object context)
    {
        DrawCommandContext drawCommandContext = context as DrawCommandContext;
        if (drawCommandContext == null || drawCommandContext.DrawnPath == null)
        {
            return source;
        }

        Canvas canvas = new Canvas();

        canvas.ClipToBounds = true;
        var dpiXFactor = source.Bitmap.DpiX / 96;
        var dpiYFactor = source.Bitmap.DpiY / 96;

        double imageWidth = source.Width / dpiXFactor;
        if (imageWidth == double.PositiveInfinity)
        {
            imageWidth = source.Width;
        }
        double imageHeight = source.Height/ dpiYFactor;
        if (imageHeight == double.PositiveInfinity)
        {
            imageHeight = source.Height; 
        }

        canvas.Children.Add(new System.Windows.Controls.Image()
        {
            Source = source.Bitmap,
            Width = imageWidth,
            Height = imageHeight,
        });

        Panel parent = drawCommandContext.DrawnPath.Parent as Panel;
        if (parent != null)
        {
            parent.Children.Remove(drawCommandContext.DrawnPath);
            drawCommandContext.DrawnPath.RenderTransform = new ScaleTransform(1 / dpiXFactor, 1 / dpiYFactor);
            canvas.Children.Add(drawCommandContext.DrawnPath);
        }

        RenderOptions.SetBitmapScalingMode(canvas, BitmapScalingMode.NearestNeighbor);
        BitmapSource bitmapSource = this.GetBitmapSource(source.Width, source.Height, canvas, source.Bitmap.DpiX, source.Bitmap.DpiY);
        return new RadBitmap(bitmapSource);
    }

    private BitmapSource GetBitmapSource(int width, int height, Canvas canvas, double dpiX, double dpiY)
    {
        Size size = new Size(width, height);
        canvas.Measure(size);
        canvas.Arrange(new Rect(size));
        RenderTargetBitmap renderBitmap = new RenderTargetBitmap(width, height, dpiX, dpiY, PixelFormats.Pbgra32);
        renderBitmap.Render(canvas);
        return renderBitmap;
    }
}

To use the custom tools in RadImageEditorUI, you will need to use them as CommandParameter in the ImageToolItem.

  <telerik:ImageToolItem ImageKey="Draw" telerik:LocalizationManager.ResourceKey="ImageEditor_Draw" Command="commands:ImageEditorRoutedCommands.ExecuteTool">
      <telerik:ImageToolItem.CommandParameter>
          <local:CustomDrawTool />
      </telerik:ImageToolItem.CommandParameter>
  </telerik:ImageToolItem>

Unplanned
Last Updated: 15 Jan 2025 14:41 by Stenly
The image rendering of the signed document with indexed color space is incorrect when importing it.
Unplanned
Last Updated: 14 Jan 2025 05:40 by Simon
If I select multiple Paragraphs and TabForward, all paragraphs will be indented by [indent value]*[selected paragraphs]
Unplanned
Last Updated: 10 Jan 2025 18:00 by Martin Ivanov

A SocketException can occur when the ImageInline source is assigned to a link pointing to a picture on a remote server (a website). For example: UriSource ="https://docs.telerik.com/devtools/wpf/knowledge-base/images/kb-chartview-categorical-and-datetime-axis-0.png"

This could happen during the fetching of the image stream. In some cases, the server may give a NetworkStream or ConnectionStream, or similar Stream implementation, which keeps an open connection between the application and the server. If the connection get severed during the stream reading, an exception is thrown. 

The exception message is: "Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host."

The stacktrace is:

Exception Info: System.Net.Sockets.SocketException
  at System.Net.Sockets.NetworkStream.Read(Byte[], Int32, Int32)
Inner Exception:
Exception Info: System.IO.IOException
  at System.Net.ConnectStream.Read(Byte[], Int32, Int32)
  at System.IO.Stream.InternalCopyTo(System.IO.Stream, Int32)
  at Telerik.Windows.Documents.Layout.ExtensionMethods.ToMemoryStream(System.IO.Stream)
  at Telerik.Windows.Documents.Model.ImageInline.<SetStreamFromUriSource>b__0(System.Object, StreamReadyEventArgs)
  at Telerik.Windows.Documents.Utils.ResourceStreamLocator.OnStreamReady()
  at System.Net.WebClient.OnOpenReadCompleted(System.Net.OpenReadCompletedEventArgs)
  at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
  at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
  at System.Windows.Threading.DispatcherOperation.InvokeImpl()
  at MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(System.Object)
  at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
  at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
  at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
  at MS.Internal.CulturePreservingExecutionContext.Run(MS.Internal.CulturePreservingExecutionContext, System.Threading.ContextCallback, System.Object)
  at System.Windows.Threading.DispatcherOperation.Invoke()
  at System.Windows.Threading.Dispatcher.ProcessQueue()
  at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
  at MS.Win32.HwndWrapper.WndProc(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
  at MS.Win32.HwndSubclass.DispatcherCallbackOperation(System.Object)
  at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32)
  at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
  at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32)
  at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr, Int32, IntPtr, IntPtr)
  at MS.Win32.UnsafeNativeMethods.DispatchMessage(System.Windows.Interop.MSG ByRef)
  at System.Windows.Threading.Dispatcher.PushFrameImpl(System.Windows.Threading.DispatcherFrame)
  at System.Windows.Application.RunDispatcher(System.Object)
  at System.Windows.Application.RunInternal(System.Windows.Window)

Unplanned
Last Updated: 10 Jan 2025 12:56 by Stenly
Having a table, for example, with empty cells, executing the TabBackwardsCommand does not move the caret to the previous cell of the row.
Unplanned
Last Updated: 09 Jan 2025 10:41 by Stenly
When a culture, for example, the German one is applied, parsing an SVG file with a specified matrix, will result in an exception when its value is parsed.
Unplanned
Last Updated: 09 Jan 2025 08:05 by Marc
ArgumentOutOfRangeException when PDFViewer is loaded async and one scrolls for some time.
Unplanned
Last Updated: 08 Jan 2025 13:13 by Martin Ivanov
Currently, the RadDataFilterView (shown when FilteringMode of RadGridView is set to FilterEditor) displays brackets around the filter criterias (descriptors). However, these brackets are added only for the filter descriptors in the first level of the hierarchy of descriptors. Add support for showing brackets for the nested filter descriptors as well.
Unplanned
Last Updated: 06 Jan 2025 05:58 by ADMIN
The text is not committed and is still in edit mode when the control loses focus. The partial commit of content is not working as well.
Unplanned
Last Updated: 02 Jan 2025 10:44 by Martin Ivanov
Currently, the SVG parser relies on that the "animateTransform" tag uses its "from" and "to" attributes. However, the tag allows you to omit these and use the "values" attribute instead. Add support for reading and properly using the "values" attribute.  At this moment the RadSvgImage control throws an ArgumentNullException when "from" and "to" settings are missing from the "animateTransform".
Unplanned
Last Updated: 26 Dec 2024 10:44 by Martin Ivanov

When the TitleBarVisibility is Collapsed, the backstage close button is aligned with the top of the backstage adorner. The button should have a top margin applied. 
This reproduces when the BackstagePosition property of RadRibbonBackstage is set to Office2013, which is the default setting of newer Telerik themes.

To work this around, get the backstage close button and set its top margin.

 private void RadRibbonBackstage_Loaded(object sender, RoutedEventArgs e)
 {
     var backstage = (RadRibbonBackstage)sender;
     var closeButton = backstage.FindChildByType<RadRibbonButton>();
     closeButton.Margin = new Thickness(closeButton.Margin.Left, 15, closeButton.Margin.Right, closeButton.Margin.Bottom);
 }

Unplanned
Last Updated: 25 Dec 2024 10:22 by Stenly
When the layout of the RadRichTextBox control is set to Flow, inserting an image (with Text Wrapping set to Behind Text) into a black document and moving it, can cause its content to not be displayed.
1 2 3 4 5 6