C# 按钮打开窗体之间的选项卡式Web浏览器

C# 按钮打开窗体之间的选项卡式Web浏览器,c#,wpf,facebook,browser,tabcontrol,C#,Wpf,Facebook,Browser,Tabcontrol,我很难将一个方法连接到两个不同的wpf表单。我已经好几个月没有写过方法了,而且我对c#还是个新手。感觉我错过了一些明显的东西。。。无论如何,我正在“主窗口”窗体中创建一个名为“FacebookButton”的按钮,单击该按钮时,会在窗口2中打开一个标签,指向网站www.facebook.com public partial class MainWindow : Window { public MainWindow() { InitializeComponen

我很难将一个方法连接到两个不同的wpf表单。我已经好几个月没有写过方法了,而且我对c#还是个新手。感觉我错过了一些明显的东西。。。无论如何,我正在“主窗口”窗体中创建一个名为“FacebookButton”的按钮,单击该按钮时,会在窗口2中打开一个标签,指向网站www.facebook.com

 public partial class MainWindow : Window
{


    public MainWindow()
    {
        InitializeComponent();
    }

    private void FacebookButton_Click(object sender, RoutedEventArgs e)
    {
        Window2 facebookWindow = new Window2();
        facebookWindow.Show();
        facebookWindow.facebookNewTab;
    }
}     
窗口2是

 public partial class Window2 : Window
{


    public WebBrowser wb = new WebBrowser();

    public Window2()
    {
        InitializeComponent();
    }

    private void facebookNewTab()
    {
        TabItem tp = new TabItem();
        tp.Header = "Facebook";
        wb.Navigate("http://facebook.com");
        tp.Content = wb;
        tabControl.Items.Add(tp);
    }
感谢您的帮助


谢谢。

您需要将
窗口2.facebookNewTab
设置为
public
internal
方法,以便从
主窗口调用它。只能从包含类型中调用私有方法

public void facebookNewTab()
{
    //Code here...
}
这一行代码也有一个问题:

facebookWindow.facebookNewTab

目前,这没有调用
facebookWindow.facebookNewTab
方法。如果将圆括号从方法中去掉,则表示指向
委托中使用的方法的指针。更新代码以调用该方法应该可以修复它

private void FacebookButton_Click(object sender, RoutedEventArgs e)
{
    Window2 facebookWindow = new Window2();
    facebookWindow.Show();
    facebookWindow.facebookNewTab();
}

非常感谢!我现在明白了。我知道我错过了一些简单的东西。。谢谢