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