There are several problems in your code but the error you are reporting is caused by the fact that you create a new button and then try to use it's
Tag
property which is null. (a new button doesn't have anything assigned to it's tag).
void b_Click(object sender, RoutedEventArgs e)
{
var l = new System.Windows.Forms.Label();
var b = new System.Windows.Controls.Button();
ButtonBar.Items.ToString();
System.Windows.Forms.WebBrowser browser = GetCurrentWebBrowser();
browser.Navigate(b.Tag.ToString());
}
you probably want something like
Button b = sender as System.Windows.Controls.Button;
if (b != null)
{
}