Used in combination with Library_QueryGetNextFile to get a list of files.

public delegate bool Library_QueryFilesDelegate(string query);
  • query:
    • "domain=SelectedFiles". Get current selected files
    • "domain=DisplayedFiles". Get current displayed files in Main Panel
    • "query" also supports auto playlist format filtering. Create an auto-playlist with required criteria and look at the xml, you only need these parts:
  <Source Type="1">
    <Conditions CombineMethod="<1 of combnined methods>">
      <Condition Field="<TagName1>" Comparison="<1 of comparisons>" Value="<TagValue1>" />
      <Condition Field="<TagName2>" Comparison="<1 of comparisons>" Value="<TagValue2>" />

for source type, the flags can be combined:

MusicLibrary = 1
Podcasts = 2
Inbox = 4
AudioBooks = 32
Video = 64

so MusicLibrary + AudioBooks = 33


Adds a menu item in the main MusicBee menu.

public delegate System.Windows.Forms.ToolStripItem MB_AddMenuItemDelegate(string menuPath, string hotkeyDescription, EventHandler handler);

menuPath: where you want it (seperated with slashes) and which name it displays



hotkeyDescription: arbitrary string with hotkey description as it appears in "Preferences> Hotkeys". If hotkeyDescription = null then no hotkey can be defined for this menu item.


Add a shortcut handler to Musicbee (which the user has to define and enable to work).

public delegate void MB_RegisterCommandDelegate(string command, EventHandler handler);


TrackChanged (1): means that the player changes track (to another), not the track itself being changed

FileDeleting (25), FileDeleted (26), RatingChanging, TagsChanging: The obvious with synchronous event meaning you can be sure you receive the notification FileDeleting (Ratingchanging, TagsChanging) before the file is deleted (rating/ tags changed) but it needs to be used carefully in that any slowness in your plugin will be blocking musicbee itself. The other notifications are asynchronous.


Get the user path to a writeable storage area that you can use for saving files. Suggest you create your own sub-folder and files there.

Community content is available under CC-BY-SA unless otherwise noted.