2016-02-16 19 views
6

Sử dụng .NET WPF và Windows 10, có cách nào để đẩy thông báo bánh mì nướng cục bộ lên trung tâm hành động bằng cách sử dụng C#? Tôi đã chỉ nhìn thấy những người làm cho hộp thoại tùy chỉnh cho rằng, nhưng phải có một cách để làm điều đó thông qua os.Cửa sổ gốc WPF 10 bánh mì nướng

+0

Tôi thực sự sử dụng thư viện đó, bây giờ tôi chỉ cần phải tìm ra nơi mà các phương pháp này;/ – shady

+0

@AbinMathew Metro.Mahapps không có gì để làm với nâng cốc chúc mừng mẹ đẻ. –

+0

@shady Theo như tôi nhớ, cách duy nhất để hiển thị bánh mì nướng từ các ứng dụng Win32 là bằng cách sử dụng COM. –

Trả lời

2

Bạn có thể sử dụng một NotifyIcon từ System.Windows.Forms namespace như thế này:

class Test 
{ 
    private readonly NotifyIcon _notifyIcon; 

    public Test() 
    { 
     _notifyIcon = new NotifyIcon(); 
     // Extracts your app's icon and uses it as notify icon 
     _notifyIcon.Icon = Icon.ExtractAssociatedIcon(Assembly.GetExecutingAssembly().Location); 
     // Hides the icon when the notification is closed 
     _notifyIcon.BalloonTipClosed += (s, e) => _notifyIcon.Visible = false; 
    } 

    public void ShowNotification() 
    { 
     _notifyIcon.Visible = true; 
     // Shows a notification with specified message and title 
     _notifyIcon.ShowBalloonTip(3000, "Title", "Message", ToolTipIcon.Info); 
    } 

} 

này nên làm việc kể từ khi .NET Framework 1.1. Tham khảo this MSDN page để biết thông số của ShowBalloonTip.

Khi tôi phát hiện ra, tham số đầu tiên của ShowBalloonTip (trong ví dụ của tôi là 3000 mili giây) được bỏ qua một cách hào phóng. Ý kiến ​​được đánh giá cao;)

2

CẬP NHẬT

Điều này dường như được làm việc tốt trên các cửa sổ 10

https://msdn.microsoft.com/library/windows/apps/windows.ui.notifications.toastnotificationmanager.aspx

bạn sẽ cần phải thêm những nugets

Install-Package WindowsAPICodePack-Core 
Install-Package WindowsAPICodePack-Shell 
+0

Bạn không thể làm điều này trong WPF ra khỏi hộp. – Perfection

+1

@Perfection tôi nghĩ rằng điều này sẽ tốt cho OP bạn nghĩ gì? –

+0

Điều này có vẻ thú vị. Tôi có thể đi và tự mình làm điều này. Tôi thực sự đã giải quyết nó tối qua bằng cách tham khảo Windows.winmd từ một Resource Kit. – Perfection

0

tôi quản lý để truy cập API hoạt động cho windows 8 và 10 bằng cách tham chiếu

  • Windows.winmd: C: \ Program Files (x86) \ Windows Kits \ 8.0 \ Tài liệu tham khảo \ CommonConfiguration \ Neutral

này cho thấy Windows.UI.Notifications.

+0

Tôi không có dll đó trong thư mục đó: / – shady

Các vấn đề liên quan