Das Menü des Office Ribbons unterstützt auch eine Möglichkeit, Einträge dynamisch - also zur Laufzeit - zu laden. Hierfür muss die "Dynamic" Einstellung in Visual Studio (erreicht man durch Klick auf das Menü-Control am Ribbon - Eigenschaften) auf "True" gesetzt sein.
Um neue Einträge einzufügen, wird die "Items.Add" Methode verwendet. Wie dies genau aussehen kann, wird im folgenden Beispiel demonstriert. Hierbei wird eine SQL-Datenbank verwendet:
private void Menu_Load(object sender, RibbonUIEventArgs e)
{
SqlConnection conn = new SqlConnection();
SqlCommand command = new SqlCommand();
SqlDataReader dreader;
conn.ConnectionString = @"Data Source=mario-pc\sqlexpress;Initial Catalog=msdnbriefing;Integrated Security=True";
conn.Open();
command = new SqlCommand("SELECT name FROM dbo.customers", conn);
dreader = command.ExecuteReader();
while (dreader.Read())
{
RibbonButton button = new RibbonButton();
button.Label = dreader.GetString(0);
button.Click += new EventHandler<RibbonControlEventArgs>(button_Click);
mnu_header.Items.Add(button);
}
dreader.Close();
conn.Close();
}