c# UWP Windows 10 CustomDialog:如何显示为非模态?我不能让它冻结后面的信息

本文关键字:不能 模态 冻结 信息 CustomDialog Windows UWP 何显示 显示 | 更新日期: 2023-09-27 18:03:53

如果没有非模态选项(?)是否有另一种方法使一个小的可移动的信息对话框/窗口/页面在我的页面顶部。我需要保持这作为一个参考,但有它是可移动的,所以潜在的信息可以揭示。Visual Studio 2015, Future Store App.谢谢。

c# UWP Windows 10 CustomDialog:如何显示为非模态?我不能让它冻结后面的信息

不能使标准对话框是非模态的。要实现您想要的效果,您应该在页面顶部使用一个自定义面板,并将操作事件连接到该面板上。例如:

<Grid x:Name="LayoutRoot">
    <!-- some other content -->
    <Grid x:Name="Dialog" Background="Red" Width="200" Height="100" 
          ManipulationMode="All" ManipulationDelta="Dialog_OnManipulationDelta">
        <Grid.RenderTransform>
            <CompositeTransform x:Name="DialogTransform" />
        </Grid.RenderTransform>
    </Grid>
</Grid>

和后面的代码:

 private void Dialog_OnManipulationDelta(object sender, ManipulationDeltaRoutedEventArgs args)
 {
     DialogTransform.TranslateX += args.Delta.Translation.X;
     DialogTransform.TranslateY += args.Delta.Translation.Y;
 }

然后你可以建立更复杂的逻辑,如显示/隐藏动画,关闭按钮等