Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
c#WPF如何产生浮华的警告_C#_Wpf_Xaml - Fatal编程技术网

c#WPF如何产生浮华的警告

c#WPF如何产生浮华的警告,c#,wpf,xaml,C#,Wpf,Xaml,我正在学习WPF,所以请容忍我 如果某个事件被触发,我想让我的WPF应用程序在用户面前闪现 “通知”用户的最佳方式是什么?我真的希望用户做出反应 干杯,帕特里克 环境:Windows7/64bit/.Net4最好完全是主观的,取决于许多上下文变量,但下面是我如何用MVVM风格来实现它的 在主视图模型中,定义特性 pubic ObservableCollection<AlertViewModel"> Alerts { get; private set; } 将在主窗体顶部弹出一个鲜红

我正在学习WPF,所以请容忍我

如果某个事件被触发,我想让我的WPF应用程序在用户面前闪现

“通知”用户的最佳方式是什么?我真的希望用户做出反应

干杯,帕特里克


环境:Windows7/64bit/.Net4最好完全是主观的,取决于许多上下文变量,但下面是我如何用MVVM风格来实现它的

在主视图模型中,定义特性

pubic ObservableCollection<AlertViewModel"> Alerts { get; private set; }
将在主窗体顶部弹出一个鲜红色的警告框。直到用户按下“Disclose”按钮,它才会消失

如果希望它闪烁、淡入淡出或上下反弹,可以在数据模板中添加动画

您可以使用转换器或数据来启用/禁用应用程序中绑定到AlertsControl.HasItems的其余控件


祝你好运。

如果你想让用户做出反应,你只需打开一个模式对话,就可以强迫他们做出反应。其中最轻的一款是。您还可以使用它们的方法创建普通模式窗口,您可以通过去掉这些窗口的正常外观,使它们成为您想要的“花式”。这是通过将设置为
None
true
来实现的,这将删除所有框架元素,因此窗口现在是纯内容


对于非模式通知来说非常方便,而且它们已经是内容,但是如果您想要圆角,也可能需要将它们的
AllowTransparency
设置为true。

您希望它们这样骚扰它们,以便您的应用程序被迅速卸载并丢弃吗?闪烁任务栏中的图标或在系统托盘附近显示通知。s/system-tray/notification area/Matthew,感谢您的评论。通常我和你在一起:谁需要这些“你确定吗?”的问题。但我这么问是因为我的简单应用程序(只有我使用)应该提醒我在某个特定的时间做一些事情。你能给我指出一个在通知区闪烁图标的关键词吗?H.B.,谢谢你的回答!这就是我要找的!很高兴听到这个消息,如果你愿意的话,你可以。(如果一个答案解决了您的问题,甚至是您根据系统应该做的事情)thrag,谢谢您的回答!虽然我更喜欢MVP而不是MVVM,但我认为我仍然可以将您的方法(感谢代码片段!)与H.B.的方法结合使用。
<Grid>
    <all of my other other view controls>
    <ItemsControl x:Name="AlertsControl" Opacity="50" ItemsSource="{Binding Alerts}"/>
</Grid>
<DataTemplate DataType="{x:Type vm:AlertViewModel}">
   <Border CornerRadius="10" Margin="3" Background="Red">
     <Grid>
       <Grid.ColumnDefinitions>
         <ColumnDefinition Width="75"></ColumnDefinition>
         <ColumnDefinition></ColumnDefinition>
       </Grid.ColumnDefinitions>
       <Button Margin="10" Grid.Column="0" 
               Command="{Binding ElementName=theWindow, Path=DataContext.DismissAlarmCommand}" 
               CommandParameter="{Binding}">Dismiss</Button>
       <TextBlock  Foreground="White" FontWeight="ExtraBold" Grid.Column="1" 
               Text="{Binding Message}"  FontSize="20" 
               VerticalAlignment="Center" HorizontalAlignment="Left"></TextBlock>
     </Grid>
   </Border>
</DataTemplate>
Alerts.Add( new AlertViewModel() { Message = "Danger Will Robinson! Danger!" } );