2016-09-21 1 views
3

Я выполнил это link для реализации приложения CefSharp.Название ChromiumWebBrowser не существует в пространстве имен «clr-namespace: CefSharp.Wpf; assembly = CefSharp.Wpf»

Но я застрял во время кодирования MainWindow.xaml.

смесь для VS 2015 сказал,

Название ChromiumWebBrowser не существует в пространстве имен "CLR-имен: CefSharp.Wpf, сборка = CefSharp.Wpf"

Но я установлены CefSharp.Common и CefSharp.Wpf v51.0.0, cef.redist.x64 и cef.redist.x86 v3.2704.1432 с NuGet Package Manager.

Я новичок в разработке C#, поэтому я не знаю, как решить эту проблему. Пожалуйста, помогите мне решить эту ошибку.

Это мой MainWindow.xaml

<Window x:Class="StocktalkBrowser.MainWindow" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
     xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
     xmlns:local="clr-namespace:StocktalkBrowser" 
     xmlns:cefSharp="clr-namespace:CefSharp.Wpf;assembly=CefSharp.Wpf" 
     mc:Ignorable="d" 
     Title="MainWindow" Height="350" Width="525"> 
    <Grid> 
     <cefSharp:ChromiumWebBrowser Grid.Row="0" Address="https://github.com/cefsharp/CefSharp/wiki/Frequently-asked-questions" /> 
    </Grid> 
</Window> 

+0

ли это просто сказать, как информация, или он не компилируется? Иногда дизайнер действительно глуп и просто говорит вам, но проект будет компилироваться без каких-либо проблем. Возможно, очистите свой проект и восстановите его.Иногда это также помогает –

+0

@NawedNabiZada Я устал это много раз, но это не имеет значения. –

+0

Скомпилирует? –

ответ

0

Я просто попытался ссылку, и как я уже говорил в комментариях компилируется без каких-либо проблем.

It is shown as error, but you can ignore it Можно игнорировать.

No Preview available И предварительный просмотр недоступен, я научился жить с ним. не

Compiles Отсутствие ошибок при компиляции

Program starts И программа запустится. Нет проблем

+0

Я не знаю почему, но сейчас он работает хорошо! Спасибо –

1

Для меня проблема заключалась в том, что платформа решений была установлена ​​в AnyCPU.
Насколько я знаю, CefSharp не поддерживает AnyCPU. Интересно, что решение было просто прекрасным в режиме деблокирования, но в режиме отладки я сразу получил ошибку - the invocation of the constructor on type that matches ... the specified binding constraints threw an exception.

Как только я изменил платформу решений только на x64, ошибка XAML исчезла (The name ChromiumWebBrowser does not exist in the namespace “clr-namespace:CefSharp.Wpf;assembly=CefSharp.Wpf”). И я мог бы запустить решение как в режиме отладки, так и в режиме Release.

+0

Спасибо за ваш ответ. Но я ушел на пенсию с помощью CdefSharp и перешел на Electron. Я попробую еще раз, когда у меня будет достаточно времени. Спасибо Марко –

0

его не поддерживаются в XAML desginer, поэтому загрузите его в время выполнения:

  1. Удалить элемент из XAML, и вместо того, чтобы поместить любой контейнер, такие как границы:

    <Border x:Name="cefChromeContainer" /> 
    
  2. в коде конструктора, после InitializeComponent(); звоните, крадуйте элемент браузера и помещайте его в контейнер. еще лучше объявить браузер в классе совка:

    CefSharp.Wpf.ChromiumWebBrowser browser = new CefSharp.Wpf.ChromiumWebBrowser(); 
    
    public MainWindow() 
    { 
        InitializeComponent(); 
        cefChromeContainer.Content = browser; 
        browser.Address = "https://stackoverflow.com"; 
    } 
    
+0

Спасибо большое! но мы выбрали Electron. –

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