Как я могу поставить дисплей WebBrowser за моим контролем? - PullRequest
3 голосов
/ 28 января 2012

Я пытаюсь создать меню поверх элемента управления WebBrowser, поэтому, когда пользователь выбирает его, он сообщает WebBrowser перейти на страницу столетия.

Итак, я сделал что-то вроде:

<Grid x:Name="Root">
    <WebBrowser Name="_WebBrowser" Source="http://google.ca" Grid.Column="0" Grid.Row="0"></WebBrowser>    
    <Expander Name="expander1" HorizontalAlignment="Left" VerticalAlignment="Stretch" Width="250" ExpandDirection="Right" IsExpanded="True" Grid.Column="0" Grid.Row="0">

Насколько я знаю, последний определяющий элемент управления должен быть сверху ...

Но странно, WebBrowser всегда будет отображаться сверху .... и он покрывает мой Expander (меню). Я пытался поместить WebBrowser в Carvas или даже Button lol Но WebBrowser все равно отображается сверху ....

Надеюсь, это не ошибка в .NET 3.5 .....

1 Ответ

3 голосов
/ 28 января 2012

Краткий ответ: это ограничение WPF.

Элемент управления WebBrowser - это просто управляемая оболочка для компонента Windows COM, которая имеет собственный дескриптор окна. По этой причине вы не можете рисовать над ним.

Подробнее: Управление веб-браузером WPF 3.5 и ZIndex

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...