Ursa.Avalonia
Ursa.Avalonia copied to clipboard
在第二层的MenuItem中调用OverlayDialog时,对话框闪烁的问题
问题:
在第二层的MenuItem中调用OverlayDialog时,对话框会先在左上角闪一下再到画面中间。 有Overlay的MessageBox也会。 原因不明,暂时的解决方法是调用前加Task.Delay(1)
环境:
Windows11
版本:
Avalonia 11.1.0-beta2 Semi.Avalonia 11.1.0-beta2 Irihi.Ursa 0.3.0-beta20240518
代码如下:
MainWindow.axaml
<Panel>
<DockPanel>
<Menu DockPanel.Dock="Top">
<MenuItem Header="菜单">
<MenuItem Click="Button_Click" Header="测试1" />
</MenuItem>
</Menu>
<Button Click="Button_Click" Content="测试2" />
</DockPanel>
<u:OverlayDialogHost />
</Panel>
MainWindow.axaml.cs
private async void Button_Click(object? sender, RoutedEventArgs e)
{
//加延迟可以解决这个问题
//await Task.Delay(1);
var ret = await OverlayDialog.ShowModal(null, null);
}