diff --git a/src/thirdparty/cppnet/cppkore/ComboBox.cpp b/src/thirdparty/cppnet/cppkore/ComboBox.cpp
index a9b1dcfe..a0e7669d 100644
--- a/src/thirdparty/cppnet/cppkore/ComboBox.cpp
+++ b/src/thirdparty/cppnet/cppkore/ComboBox.cpp
@@ -283,6 +283,11 @@ namespace Forms
 		SelectedIndexChanged.RaiseEvent(this);
 	}
 
+	void ComboBox::OnDropDownOpened()
+	{
+		DropDownOpened.RaiseEvent(this);
+	}
+
 	void ComboBox::OnDropDownClosed()
 	{
 		DropDownClosed.RaiseEvent(this);
@@ -412,6 +417,8 @@ namespace Forms
 			OnSelectedIndexChanged();
 			OnSelectedItemChanged();
 			break;
+		case CBN_DROPDOWN:
+			OnDropDownOpened();
 		case CBN_CLOSEUP:
 			OnDropDownClosed();
 			break;
diff --git a/src/thirdparty/cppnet/cppkore/ComboBox.h b/src/thirdparty/cppnet/cppkore/ComboBox.h
index d5632b50..538a168d 100644
--- a/src/thirdparty/cppnet/cppkore/ComboBox.h
+++ b/src/thirdparty/cppnet/cppkore/ComboBox.h
@@ -134,11 +134,13 @@ namespace Forms
 		virtual void OnHandleCreated();
 		virtual void OnSelectedItemChanged();
 		virtual void OnSelectedIndexChanged();
+		virtual void OnDropDownOpened();
 		virtual void OnDropDownClosed();
 
 		// We must define event handlers here
 		EventBase<void(*)(Control*)> SelectedItemChanged;
 		EventBase<void(*)(Control*)> SelectedIndexChanged;
+		EventBase<void(*)(Control*)> DropDownOpened;
 		EventBase<void(*)(Control*)> DropDownClosed;
 
 		// Override WndProc for specific combo box messages.