टैबकंट्रोल से डायनामिक वेबब्राउज़र चुनें


नमस्ते, मैं अपने स्वयं के कस्टम वेब ब्राउज़र पर काम कर रहा हूं। यदि मैं अपने टैब नियंत्रण में एक वेब ब्राउज़र डालता हूं और उसे नाम देता हूं तो मैं आसानी से वेबब्रोसर विधियों का उपयोग करने के लिए अपने बटन क्लिक में webbrowser1.Navigate() पर जा सकता हूं।

मैंने एक विधि CreateTab बनाई और यह स्वचालित रूप से एक डिफ़ॉल्ट वेब पेज के साथ मेरे टैब में एक वेब ब्राउज़र जोड़ता है।
मेरी समस्या अन्य बटन क्लिक में इस वेबब्राउज़र को चुनने की है ताकि मैं होम, बैक, फॉरवर्ड आदि पर कॉल कर सकूं।

यहां टैब बनाने की विधि दी गई है।

सी#
private void CreateTabItem()
{   //create a new tab
    TabItem item = new TabItem();
    item.Header = "Fitness" + i ;
    WebBrowser browser = new WebBrowser();
    //browser.Name = "Website";

    browser.Navigate("http://www.bodybuilding.com/exercises/");
    item.Content = browser;
    tabControl.Items.Add(item);
    i++;
}

private void btnBack_Click(object sender, RoutedEventArgs e)
{
    //browser.GoBack();
    //if (webBrowser1.CanGoBack)
       // webBrowser1.GoBack();
}

समाधान 1

आप यह तरीका आज़मा सकते हैं.
अपना कोड कुछ इस तरह बदलें:

सी#
private void CreateTabItem()
{   //create a new tab
    TabItem item = new TabItem();
    item.Header = "Fitness" + i ;
    WebBrowser browser = new WebBrowser();
    //browser.Name = "Website";
    item.Tag = browser; 
    
    browser.Navigate("http://www.bodybuilding.com/exercises/");
    item.Content = browser;
    tabControl.Items.Add(item);
    i++;
}

private void btnBack_Click(object sender, RoutedEventArgs e)
{
    TabItem item = (tabControl.SelectedItem as TabItem);
    if (item != null)
    {
        WebBrowser browser = (item.Tag as WebBrowser);
        if (browser != null)
        {
            if (browser.CanGoBack)
                browser.GoBack();
        }
    }
}

आप उपयोग करने पर भी विचार कर सकते हैं tabControl.Items.Count के बजाय i अनुक्रमण के लिए.

コメント

タイトルとURLをコピーしました