Unplanned
Last Updated: 22 Apr 2024 14:34 by Frank
Created by: Frank
Comments: 0
Category: Window
Type: Bug Report
1

The Window can display as centered, but after the user moves or resizes it, the app is not able to center the Window programmatically.

The only possible workaround is to toggle the Window's Visible parameter:

https://blazorrepl.telerik.com/weaewmFe32oT4rnQ42

<TelerikWindow @bind-Top="@Top" @bind-Left="@Left" Centered="@Centered" @bind-Visible="@Visible">
    <WindowTitle>
        Title
    </WindowTitle>
    <WindowContent>
        Drag or resize the Window and center it afterwards...
    </WindowContent>
</TelerikWindow>

<TelerikButton OnClick="@( () => Visible = !Visible )">Toggle Window</TelerikButton>
<TelerikButton OnClick="@OnCenterClick">Center</TelerikButton>

@code {
    string Top { get; set; }
    string Left { get; set; }
    bool Centered = false;
    bool Visible { get; set; } = true;

    async Task OnCenterClick()
    {
        Visible = false;
        await Task.Delay(1);

        Top = Left = string.Empty;
        Visible = true;
    }
}

Completed
Last Updated: 19 Dec 2023 17:47 by ADMIN
Release 4.6.0 (11 Oct 2023) (R3 2023)
Created by: Will
Comments: 3
Category: Window
Type: Bug Report
9

When I try to add a context menu to the content in the Modal Window the context menu stays behind the modal.

===

A possible workaround is to increase the z-index of the ContextMenu:

<TelerikContextMenu Data="@MenuItems" Selector="#menu-target"
                    Class="menu-on-top" />

<style>
    .menu-on-top,
    .k-animation-container:has(.menu-on-top) {
        z-index: 11000 !important;
    }
</style>

<TelerikWindow Width="240px" Height="160px"
               Top="100px" Left="100px"
               Visible="true" Modal="true">
    <WindowTitle>Window</WindowTitle>
    <WindowContent>
        <div style="height:60px;border: 1px solid;"
             id="menu-target">Right-click me</div>
    </WindowContent>
</TelerikWindow>

@code {
    List<ContextMenuItem> MenuItems { get; set; } = new List<ContextMenuItem>();

    protected override void OnInitialized()
    {
        for (int i = 1; i <= 7; i++)
        {
            MenuItems.Add(new ContextMenuItem() { Text = $"Menu item {i}" });
        }

        base.OnInitialized();
    }

    public class ContextMenuItem
    {
        public string Text { get; set; } = string.Empty;
    }
}

Completed
Last Updated: 12 Oct 2023 15:13 by ADMIN
Release 5.0.0 (15 Nov 2023) (R1 PI1)
After you minimize or maximize the Window, the tooltip for the Restore button displays minimize/maximize instead of restore
Completed
Last Updated: 27 Feb 2023 12:43 by ADMIN
Release 4.1.0 (15/03/2023)

Seems to be a bug in the 4.0.1 release that causing a resizing event to fire as a window is closed - this means that you have to close the window twice.

This appears when the text exceeds the width of the pop up causing it to wrap. In the attached example, the yellow highlighted text is too long for the window. Shorter texts that don't wrap don't seem to cause the issue.

This bug is repeatable in your demo code:

@page "/"

<h1>Hello, world!</h1>

Welcome to your new app.<br />

<TelerikButton OnClick="@SayHelloHandler" ThemeColor="@(ThemeConstants.Button.ThemeColor.Primary)">Say Hello</TelerikButton>

<br />

@helloString

<TelerikButton OnClick="@ButtonClicked" Title="Open Window">Open Window</TelerikButton>

<TelerikWindow @bind-Visible="@IsLearnMoreWindowVisible"
               MaxHeight="90%"
               MaxWidth="90%"
               Modal="true"
               Centered="true">
    <WindowTitle>
        <strong>Learn More: Something</strong>
    </WindowTitle>
    <WindowContent>
        @(new MarkupString("<p>What is the form called? Will appear in the Header to show the user what they are looking at. Any spaces in the name will be stripped during code generation for T-SQL.</p>"))
    </WindowContent>
    <WindowActions>
        <WindowAction Name="Close" OnClick="@(() => IsLearnMoreWindowVisible = false)"></WindowAction>
    </WindowActions>
</TelerikWindow>

@code {
    MarkupString helloString;
    bool IsLearnMoreWindowVisible = false;

    void SayHelloHandler()
    {
        string msg = string.Format("Hello from <strong>Telerik Blazor</strong> at {0}.<br /> Now you can use C# to write front-end!", DateTime.Now);
        helloString = new MarkupString(msg);
    }

    void ButtonClicked()
    {
        IsLearnMoreWindowVisible = true;
    }
}
Declined
Last Updated: 26 Jan 2023 08:55 by ADMIN
Created by: Eric
Comments: 1
Category: Window
Type: Bug Report
0

The described functionality listed on https://demos.telerik.com/blazor-ui/window/stacking-windows

"The Telerik Window component for Blazor provides stacking z-index functionality that brings to front the component any time it receives focus."

doesn't appear to be working in the demo. When the one window receives focus the z-index does not change.  This appears to not work correctly in the demo either. 

Unplanned
Last Updated: 21 Dec 2022 11:54 by Venu
The dropdown is not showing all items and the page behind the window is scrolling instead.
Completed
Last Updated: 12 Oct 2022 07:26 by ADMIN
Release 3.7.0 (09 Nov 2022)
Created by: Jerome
Comments: 1
Category: Window
Type: Bug Report
1

<TelerikWindow Width="80%" Height="auto" Top="404px" State="WindowState.Minimized" Left="200px" Class="myClass" Visible="true" ><WindowTitle>My Title</WindowTitle><WindowActions><WindowAction Name="Minimize"></WindowAction></WindowActions><WindowContent><h1>My Content</h1></WindowContent></TelerikWindow>

 

Window starts out minimized, with proper width, height, top and left.

Clicking maximize button clears the top and left property, and resets position every time you open/close.

  • Click/dragging to move the window will reapply top/left property, and then maximize/minimize works properly.

 

If you change the state to to WindowState.Maximized, it has the correct top/left property, but resets the width/height properties.

Window is not draggable.

 

Not setting the State at all is the only way to have proper behavior.


Completed
Last Updated: 05 Sep 2022 05:02 by ADMIN
Release 3.6.0 (14 Sep 2022) (R3 2022)
Created by: Yaimo
Comments: 0
Category: Window
Type: Bug Report
1

The page scrolls instead of the window component moving.

You can drag it a few pixels at a time at most.

EDIT:

A workaround could be to disable touch events for dragging (which may also help for other components like the Splitter):

<TelerikWindow Visible="true" Class="workaround-for-touch-drag">
    <WindowTitle>the title</WindowTitle>
    <WindowContent>the content</WindowContent>
</TelerikWindow>

<style>
    .workaround-for-touch-drag {
        touch-action: none;
    }
</style>

Completed
Last Updated: 19 Jul 2022 10:34 by ADMIN
Release 3.5.0

When a Window is declared inside the Content of another Window, the child Window is resized twice the dragged size.

Reproduction: https://blazorrepl.telerik.com/wwahOtEt49vtoFbZ39.

Steps to reproduce:

  1. Open the child Window
  2. Resize the child Window

The behavior occurs when the child Window contains a component. However, it is not applicable for all components. For example, placing a TextBox or simple text in the child Window does not seem to cause an issue.

Completed
Last Updated: 23 Jun 2022 12:40 by ADMIN
Release 3.5.0
I'm unable to use the drag bars on the Gantt timeline tasks at V3.3.0. When I move the drag handles on the timeline bar the whole window moves rather than extending the bar. I rolled back to V3.1.0 using the same code and the drag bars worked as they should.
Completed
Last Updated: 02 Jun 2022 11:54 by ADMIN
Release 3.4.0

When you open the Modal Window, try to drag it through a page that has a vertical scrollbar. The Modal Window is moving away from the cursor. This can be seen in our Modal Window demo too. If there is no vertical scrollbar on the page, the Modal Window dragging is working properly.

<div style="height:400px;"></div>
<TelerikButton Icon="window" OnClick=@(()=> WindowVisible = true)>Open Modal</TelerikButton>
<div style="height:400px;"></div>

<TelerikWindow Class="demo-window" Width="500px" Height="300px" Centered="true" @bind-Visible=@WindowVisible Modal="true">
    <WindowTitle>
        <strong>Modal Window</strong>
    </WindowTitle>
    <WindowActions>
        <WindowAction Name="Close" />
    </WindowActions>
    <WindowContent>
        <p>Click the close button to dismiss this modal dialog.</p>
    </WindowContent>
</TelerikWindow>

@code { public bool WindowVisible { get; set; } }

<style type="text/css">
    .demo-window {
        z-index: 44444;
    }
</style>

Reproduction steps:

  1. Open the Modal Window
  2. Try to drag it across the page
  3. Try to scroll when you have the Window opened

Reproduction happens in the demo too here: https://demos.telerik.com/blazor-ui/window/modal

Declined
Last Updated: 15 Dec 2021 14:10 by ADMIN

When setting the Hidden property to true on a WindowAction, the action button is still rendered, e.g.:

<WindowAction Name="Maximize" Hidden="true"></WindowAction>

See this REPL for an example:
https://blazorrepl.telerik.com/wPbGYMvi23qjUo1c41

 

  
Declined
Last Updated: 30 Nov 2021 16:23 by ADMIN
Created by: Özmen
Comments: 3
Category: Window
Type: Bug Report
0

When using an enclosing div element for Your Telerik Window component:

A view in the web console shows that the defined name in the class-attribute of the div element isn't recognized.

Declined
Last Updated: 25 Aug 2021 08:54 by ADMIN
Created by: Chuck
Comments: 2
Category: Window
Type: Bug Report
0

If I have a grid inside a TelerikWindow, when I show the window allowing it to be draggable, there seems to be undesired behavior.  In my environments, with 2.26.0, the TelerikWindow extends to the right of the screen and the draggable operation is impacted.  I have the following code (very cut-down and simplified) as my Index.razor.  If you click the button and start dragging the window around you should see what I am referring to.

 

@page "/"

<TelerikButton OnClick="@ShowModal">Show Modal</TelerikButton>

<TelerikWindow Modal="true" Draggable="true" @bind-Visible="@isModalVisible">
   <WindowTitle>
      <strong>Sample</strong>
   </WindowTitle>
   <WindowContent>
      <TelerikGrid Data="@objectList" >
         <GridColumns>
            <GridColumn Field="@(nameof(SampleObject.Name))" Title="Name" />
            <GridColumn Field="@(nameof(SampleObject.Description))" Title="Description" />
         </GridColumns>
      </TelerikGrid>
   </WindowContent>
   <WindowActions>
      <WindowAction Name="Close" />
   </WindowActions>
</TelerikWindow>

@code {
   public bool isModalVisible = false;
   public List<SampleObject> objectList = new();

   protected override void OnInitialized()
   {
      objectList.Add(new SampleObject() { Name = "Object 1", Description = "description for object 1" });
      objectList.Add(new SampleObject() { Name = "Object 2", Description = "description for object 2" });
   }

   public void ShowModal()
   {
      isModalVisible = true;
   }

   public class SampleObject
   {
      public string Name { get; set; }
      public string Description { get; set; }
   }
}
Completed
Last Updated: 19 Apr 2021 16:53 by ADMIN
Release 2.24.0

I have a Multiselect as an editor in the Grid. When I click in the multiselect the popup with the choices stays hidden behind the window. 

 

<AdminEdit>

Workaround:

You can increase the z-index of the k-animation-container

<style>
    .k-animation-container {
        z-index: 15000;
    }
</style>


<TelerikGrid Data=@MyData EditMode="@GridEditMode.Popup" Pageable="true" Height="300px" OnUpdate="@UpdateHandler">
    <GridColumns>
        <GridColumn Field=@nameof(SampleData.ID) Editable="false" Title="ID" />
        <GridColumn Field=@nameof(SampleData.Name) Title="Name" />
        <GridColumn Field=@nameof(SampleData.Roles) Title="Position">
            <Template>
                @{
                    var item = context as SampleData;

                    @if (item.Roles.Any())
                    {
                        foreach (var role in item.Roles)
                        {
                            <span>@role</span>
                        }
                    }
                }
            </Template>
            <EditorTemplate>
                @{
                    CurrentlyEditedEmployee = context as SampleData;
                    <TelerikMultiSelect @bind-Value="@selectedValues" Data="@CurrentlyEditedEmployee.Roles"></TelerikMultiSelect>
                }
            </EditorTemplate>
        </GridColumn>
        <GridCommandColumn>
            <GridCommandButton Command="Save" Icon="save" ShowInEdit="true">Update</GridCommandButton>
            <GridCommandButton Command="Edit" Icon="edit">Edit</GridCommandButton>
        </GridCommandColumn>
    </GridColumns>
</TelerikGrid>

@code {
    List<SampleData> MyData { get; set; }
    List<string> Roles { get; set; }
    SampleData CurrentlyEditedEmployee { get; set; }

    private List<string> selectedValues { get; set; }

    public async Task UpdateHandler(GridCommandEventArgs args)
    {
        SampleData item = (SampleData)args.Item;

        // perform actual data source operations here through your service
        await MyService.Update(item);

        // update the local view-model data with the service data
        await GetGridData();
    }

    //in a real case, keep the models in dedicated locations, this is just an easy to copy and see example
    public class SampleData
    {
        public int ID { get; set; }
        public string Name { get; set; }
        public List<string> Roles { get; set; } = new List<string>() { "Test" };
    }

    async Task GetGridData()
    {
        MyData = await MyService.Read();
        Roles = await MyService.GetRoles();
    }

    protected override async Task OnInitializedAsync()
    {
        await GetGridData();
    }

    // the following static class mimics an actual data service that handles the actual data source
    // replace it with your actual service through the DI, this only mimics how the API can look like and works for this standalone page
    public static class MyService
    {
        private static List<SampleData> _data { get; set; } = new List<SampleData>();
        private static List<string> Roles = new List<string> { "Manager", "Employee", "Contractor" };

        public static async Task<List<SampleData>> Read()
        {
            if (_data.Count < 1)
            {
                for (int i = 1; i < 50; i++)
                {
                    _data.Add(new SampleData()
                    {
                        ID = i,
                        Name = "Name " + i.ToString()
                    });
                }
            }

            return await Task.FromResult(_data);
        }

        public static async Task<List<string>> GetRoles()
        {
            return await Task.FromResult(Roles);
        }

        public static async Task Update(SampleData itemToUpdate)
        {
            var index = _data.FindIndex(i => i.ID == itemToUpdate.ID);
            if (index != -1)
            {
                _data[index] = itemToUpdate;
            }
        }
    }
}

</AdminEdit>

Declined
Last Updated: 06 Apr 2021 16:45 by ADMIN
Created by: Guy
Comments: 2
Category: Window
Type: Bug Report
0

Window border styling via css has no effect - no border shows at all - I don't need help, just reporting. Tried it on Edge, Chrome and Firefox

.MyClass { /* targets the entire popup element */

border: 5px solid red; }

Microsoft Visual Studio Community 2019 Version 16.9.2
Progress® Telerik® UI for Blazor Extension - 2021.1.218.1
.NET Framework 4.8.04084
Completed
Last Updated: 08 Jan 2021 13:03 by ADMIN
Release 2.7.0

I'm working on blazor server side application.
After update Telerik.UI.for.Blazor from 2.1 to 2.5 (before I updated .net core from 3.0 to 3.1) it shows following error:
InvalidOperationException: The current thread is not associated with the Dispatcher. Use InvokeAsync() to switch execution to the Dispatcher when triggering rendering or component state.

I investigated that it's cause by Telerik window.
The error occurs when window is on start page or when the page is refreshed.
Below code for Index.razor which cause the error:

 

@page "/"
 
<TelerikWindow @bind-Visible="@WindowIsVisible">
    <WindowTitle>
        <strong>The Title</strong>
    </WindowTitle>
    <WindowContent>
        This is my window <strong>popup</strong> content.
    </WindowContent>
    <WindowActions>
        <WindowAction Name="Minimize"></WindowAction>
        <WindowAction Name="Maximize"></WindowAction>
        <WindowAction Name="Close"></WindowAction>
    </WindowActions>
</TelerikWindow>
 
<TelerikButton OnClick="@( () => WindowIsVisible = !WindowIsVisible )">Toggle window</TelerikButton>
 
@code {
    bool WindowIsVisible { get; set; } = false;
}

Thanks
Completed
Last Updated: 29 Sep 2020 07:40 by ADMIN
Release 2.17.0
When you close the page, the Window tries to dispose and this causes an exception that you can see in the Output > ASP.NET Core Server window. The exception does not show up in the browser, but shows up in the logs.


WARN  2019-12-17 09:26:16,300 Unhandled exception rendering component: Cannot process pending renders after the renderer has been disposed.
Object name: 'Renderer'.
System.ObjectDisposedException: Cannot process pending renders after the renderer has been disposed.
Object name: 'Renderer'.
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.ProcessPendingRender()
   at Microsoft.AspNetCore.Components.Server.Circuits.RemoteRenderer.ProcessPendingRender()
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.AddToRenderQueue(Int32 componentId, RenderFragment renderFragment)
   at Microsoft.AspNetCore.Components.ComponentBase.StateHasChanged()
   at Microsoft.AspNetCore.Components.Rendering.RendererSynchronizationContextDispatcher.InvokeAsync(Action workItem)
   at Microsoft.AspNetCore.Components.ComponentBase.InvokeAsync(Action workItem)
   at Telerik.Blazor.Components.TelerikWindowBase.Refresh()
   at Telerik.Blazor.Components.TelerikWindowBase.Dispose()
   at Microsoft.AspNetCore.Components.Rendering.ComponentState.Dispose()
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.Dispose(Boolean disposing)

Completed
Last Updated: 09 Sep 2020 09:53 by ADMIN
Release 2.17.0
I am passing an ObservableCollection as a parameter to a component in my WindowContent. If I do that, the window does not open. If I don't pass the parameter, the window opens.
Completed
Last Updated: 04 Sep 2020 08:31 by ADMIN
Release 2.17.0

When I host a TelerikWindow in a component that is itself hosted in a TelerikWindow the main window does not display.

VS shows continuous, never ending, memory consumption.

This behavior just started with the 2.0.0 release.

 

1 2