2

通知窗口是Visual Studio 2013中的一項新增功能。我有一個使用visual studio 2013 shell創建的獨立shell應用程序。是否有可能重寫Visual Studio 2013通知窗口

是否可以擴展Notification窗口並顯示與我們的隔離shell應用程序相關的通知或信息?

回答

3

您的問題的答案是,但是Microsoft並未正式公開該功能。如果你對此感興趣,你可以自己公開這些結構。

你能做到這一點的方式有點駭人聽聞,但它至少在VS2013中會起作用。基本上,您需要引用內部DLL(C:\ Program Files(x86)\ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ Microsoft.VisualStudio.Shell.UI.Internal.dll),或者只需複製/粘貼如凱文所做的那樣,將相關結構融入您自己的程序中:User Notifications in the Visual Studio 2013 SDK

如果做到這一點,你可以利用該接口:https://github.com/kevfromireland/visual-studio-2013-notifications-example/blob/master/UserNotificationDemo/UserNotificationDemoPackage.cs

var notificationService = (IVsUserNotificationsService)GetService(
     typeof(SVsUserNotificationsService)); 

var notifcationManager = notificationService. 
     GetUserNotificationsManagerAsync() 
     .GetResult(); 

var vsUserNotificationsManager = (IVsUserNotificationsManager) notifcationManager; 
var pic = new RedditPicProvider().GetAwwPicture(); 

vsUserNotificationsManager. 
    AddUserNotification(ExampleProvider.Guid, 
     pic.Url, 
     pic.Title, 
     pic.Url, 
     (uint) NotificationServerity.Critical, isTransient: true); 
RegisterNotificationProvider(vsUserNotificationsManager); 
相關問題