Open yyhLogin opened 6 days ago
还是需要知道你在设计怎样的布局,看描述不太懂。九宫格每个部分要弹出自己这部分独立的dialog吗?
还是需要知道你在设计怎样的布局,看描述不太懂。九宫格每个部分要弹出自己这部分独立的dialog吗?
是的,比如视频监控窗口之类的,有具体的实现步骤的文档吗?
我把主window改成了var result = await MessageBox.ShowOverlayAsync("Are you sure you want to exit?\n您确定要退出吗?", "Exit", button: MessageBoxButton.YesNo);
但是我九宫格内想这样弹什么都没出来
` [RelayCommand]
public async Task ShowDialogAsync()
{
var options = new OverlayDialogOptions()
{
FullScreen = false,
HorizontalAnchor = HorizontalAnchor,
VerticalAnchor = VerticalAnchor,
HorizontalOffset = HorizontalOffset,
VerticalOffset = VerticalOffset,
Mode = DialogMode.None,
Buttons = DialogButton.None,
CanLightDismiss = false,
CanDragMove = false,
IsCloseButtonVisible = true,
CanResize = true,
};
await OverlayDialog.ShowModal<UsbDialog, UsbDialogViewModel>(new UsbDialogViewModel(), WinNum.ToString(), options: options);
Debug.WriteLine("1111");
}`
如果想要在一个局部区域显示,需要在这个局部区域最上层遮罩一个OverlayDialogHost,然后把这个Host的HostId设置为你需要的ID,然后在调用Dialog的时候传入这个ID。
如果想要在一个局部区域显示,需要在这个局部区域最上层遮罩一个OverlayDialogHost,然后把这个Host的HostId设置为你需要的ID,然后在调用Dialog的时候传入这个ID。
哦,HostId确实不是AvaloniaProperty。您这9个也是通过ItemsSource生成吗?
换句话说,HostId是一个不能绑定的属性,只能赋予固定值或者静态变量
哦,HostId确实不是AvaloniaProperty。您这9个也是通过ItemsSource生成吗?
嗯,其实也不是固定的9个,就是根据配置自定义生成的
哦,HostId确实不是AvaloniaProperty。您这9个也是通过ItemsSource生成吗?
换句话说,HostId是一个不能绑定的属性,只能赋予固定值或者静态变量
我记得wpf的MaterialDesignThemes关于dialog有个api是IsOpen="{Binding HomeDialogIsOpen}",他可以根据isopen直接来弹出对话框,并且弹出框内容可以在直接在
哦,HostId确实不是AvaloniaProperty。您这9个也是通过ItemsSource生成吗? 换句话说,HostId是一个不能绑定的属性,只能赋予固定值或者静态变量
我记得wpf的MaterialDesignThemes关于dialog有个api是IsOpen="{Binding HomeDialogIsOpen}",他可以根据isopen直接来弹出对话框,并且弹出框内容可以在直接在materialDesign:DialogHost.DialogContent</materialDesign:DialogHost.DialogContent>里写,可以实现这个api吗
Ursa Dialog主要解决的是多层次Dialog的问题,如果是普通的Dialog通常甚至都不需要单独设计控件,一个ContentControl然后Bool值控制IsVisible就可以了。不管如果确实需要的话可以增加这种控件,只是我在实际工作中完全不会去使用这样的控件。
哦,HostId确实不是AvaloniaProperty。您这9个也是通过ItemsSource生成吗? 换句话说,HostId是一个不能绑定的属性,只能赋予固定值或者静态变量
我记得wpf的MaterialDesignThemes关于dialog有个api是IsOpen="{Binding HomeDialogIsOpen}",他可以根据isopen直接来弹出对话框,并且弹出框内容可以在直接在materialDesign:DialogHost.DialogContent</materialDesign:DialogHost.DialogContent>里写,可以实现这个api吗
Ursa Dialog主要解决的是多层次Dialog的问题,如果是普通的Dialog通常甚至都不需要单独设计控件,一个ContentControl然后Bool值控制IsVisible就可以了。不管如果确实需要的话可以增加这种控件,只是我在实际工作中完全不会去使用这样的控件。
我不是太专业的C#开发人员,能力有些不足,我现在主要是因为信创需要复刻之前的wpf程序,参照之前wpf的程序是这样实现
我想确定一件事情,在您之前的WPF项目中 Material Dialog在这种情况下也需要在Show的时候指定Identifier对吗?
我想确定一件事情,在您之前的WPF项目中 Material Dialog在这种情况下也需要在Show的时候指定Identifier对吗? 并没有指定Identifier,DialogHost节点下可以定义DialogContent,也可以通过IsOpen来打开关闭,您这边可以参考下他的api设计
demo中的dialog可以正常运行,但是我自己写的时候并没有弹出dialog也没有报错,我有个疑问是我是初始化了一个类似九宫格的布局,想在每个小格子上弹出dialog,这个时候的hostId该怎么给,我是给的一个编号id,但是我看你的示例代码是在program.cs文件中
public static AppBuilder BuildAvaloniaApp() => AppBuilder.Configure<App>() .UseManagedSystemDialogs() .UsePlatformDetect() .With(new Win32PlatformOptions()) .LogToTrace();
里注册的,还有别的地方需要注意的吗 这里是你的 hostId->public const string LocalHost = "LocalHost"; 我是这样写的 [ObservableProperty]private int _winNum;