【问题标题】:Button opens Tabbed Web browser between forms按钮在表单之间打开选项卡式 Web 浏览器
【发布时间】:2013-11-09 12:38:52
【问题描述】:

我在将一个方法连接到两个不同的 wpf 表单时遇到了一些困难。我已经好几个月没有写方法了,而且我是 C# 的新手。感觉好像我遗漏了一些明显的东西......无论如何,我正在“主窗口”表单中创建一个名为“FacebookButton”的按钮,单击该按钮时,会在窗口 2 中打开一个 tab 到网站,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);
    }

感谢任何帮助!

谢谢。

【问题讨论】:

    标签: c# wpf facebook browser tabcontrol


    【解决方案1】:

    您需要将Window2.facebookNewTab 设为publicinternal 方法,以便您可以从MainWindow 调用它。您只能从包含类型中调用私有方法。

    public void facebookNewTab()
    {
        //Code here...
    }
    

    这行代码也有问题:

    facebookWindow.facebookNewTab;

    目前这没有调用facebookWindow.facebookNewTab 方法。当您离开方法的括号时,它表示指向delegate 中使用的方法的指针。更新您的代码以调用该方法应该可以修复它。

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

    【讨论】:

    • 非常感谢!我现在知道了。我知道我错过了一些简单的东西。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-03-10
    • 1970-01-01
    • 1970-01-01
    • 2015-09-27
    • 1970-01-01
    • 2017-03-21
    • 2011-11-24
    相关资源
    最近更新 更多