2015-08-13 7 views
1

Я хотел бы использовать меню для управления веб-браузером. Но я не знаком с доступом к классу.C# Доступ к классу меню

код XAML

<Menu IsMainMenu="True"> 
<MenuItem Header="Back"></MenuItem>    
<MenuItem Header="MainMenu"> 
<MenuItem Header="subItem1" 
x:Name="subItem1" Click="subItem1_Click"> 
</MenuItem> 
</MenuItem> 
</Menu> 

Код класса

public partial class Window1 : Window 
{ 
    public Window1(): this(OverlayStyle.WinForms) 
    { 
    } 
    public Window1(OverlayStyle style) 
    { 
     InitializeComponent(); 



      WebBrowserOverlayWF wbo = new WebBrowserOverlayWF(_webBrowserPlacementTarget); 
      System.Windows.Forms.WebBrowser wb = wbo.WebBrowser; 
      wb.Navigate(new Uri("http://live.com")); 



    } 

Как я могу создать доступ к "мокрому термометру" Управление из пункта меню

 private void subItem1_Click(object sender, RoutedEventArgs e) 
    { 

    } 

Большое спасибо

+0

Вы не можете: его только в области видимости в конструкторе. Переместите объявление вне конструктора, но все еще в классе, и сохраните назначение внутри конструктора. Чем у вас будет доступ к нему. –

+0

Rocky - считается невежливым, чтобы задать вопрос, попросить кого-нибудь ответить на него и решить вашу проблему, а затем уйти без вознаграждения. Если у вас нет планов продолжать использовать SO, штраф. Но не пренебрегайте теми из нас, кто это делает. –

ответ

0

Вы можете 't: это только в scope в конструкторе. Переместите объявление вне конструктора, но все еще в классе, и сохраните назначение внутри конструктора. Чем у вас будет доступ к нему. Попробуйте

public partial class Window1 : Window 
{ 
    System.Windows.Forms.WebBrowser wb; 

    public Window1(): this(OverlayStyle.WinForms) 
    { 
    } 

    public Window1(OverlayStyle style) 
    { 
     InitializeComponent(); 

     WebBrowserOverlayWF wbo = new WebBrowserOverlayWF(_webBrowserPlacementTarget); 
     wb = wbo.WebBrowser; 
     wb.Navigate(new Uri("http://live.com")); 
    } 
} 

Затем внутри обработчика событий или иным способом, вы можете использовать wb, как вы.

+0

Спасибо !!! Теперь я могу получить доступ к wb из private void Но он показывает ошибку, заявив, что я не назначил местоположение, будет продолжать использовать значение по умолчанию null –

+0

Возможно, стоит вопрос? Опишите ошибку более полно и там, где она появится, и я смогу помочь –

+0

О, простите, моя ошибка. Проблема решена. Ты замечательный ! –

Смежные вопросы