我试图制作一个简单的应用程序,在屏幕中间显示提醒(只是一个文本标签)。如何在窗外显示?我试图让设置最小化的主窗口,而标签在特定时间显示在屏幕中间。我试图在WPF中实现这一点,但如果不可能,我将转移到Winforms。
编辑:
我将使用此处的技术使窗口透明:How to create a semi transparent window in WPF that allows mouse events to pass through但是如何隐藏窗口的任何标志,并使标签可见?
答案 0 :(得分:1)
您可以通过调用Show()
方法在透明的隐形窗口中显示标签,而不是尝试在窗口外显示某些内容"
private void Button_Click(object sender, RoutedEventArgs e)
{
Window window = new Window();
window.WindowStyle = WindowStyle.None;
window.WindowStartupLocation = WindowStartupLocation.CenterScreen;
window.AllowsTransparency = true;
window.Background = Brushes.Transparent;
window.SizeToContent = SizeToContent.WidthAndHeight;
window.ShowInTaskbar = false;
window.Content = new TextBlock() { Text = "Floating...", FontSize = 20, Foreground = Brushes.Red };
window.Show();
}
您可以在不影响浮动标签的情况下最小化主窗口,并且如果您将ShowInTaskbar
属性设置为false
,则不可见窗口不会获得任务栏按钮。
答案 1 :(得分:0)
简答:您无法在窗口外显示控件。每个控件都需要成为某个窗口的父级。该窗口可能没有任何边框或标题栏,但您无法在没有窗口的情况下显示控件。
对于通知,您需要创建一个与应用程序主窗口分开的新窗口以显示标签。然后,只要您想显示通知,即使主窗口是,您也可以显示和隐藏此窗口。隐藏。