Есть приложение C# WPF в котором присутствует 2 WPF Window
на одной несколько кнопок и WebBrowser
на другой. При щелчке по одной из кнопок на открывается второе окно а WebBrowser
отображает некоторую страницу. Каждый раз страница может быть другой. Код обработчик кнопок :
ActiveInfo active = new ActiveInfo();
active.URI = YahooFinans.httpString(YahooFinans.Tikker(row.Type));
active.Show();
Окно с браузером :
public partial class ActiveInfo : Window
{
public ActiveInfo()
{
InitializeComponent();
}
public string URI { get; set; }
}
И XAML
разметка :
<Window.DataContext>
<Binding RelativeSource="{RelativeSource Self}"/>
</Window.DataContext>
<Grid>
<WebBrowser Source="{Binding URI}"> !!!
</WebBrowser>
</Grid>
И именно на разметке падает исключение : System.Windows.Markup.XamlParseException
Дополнительные сведения: "Binding" нельзя задать в свойстве "Source" типа "WebBrowser". "Binding" можно задать только в параметре DependencyProperty объекта DependencyObject.
Как с этим бороться? Пробовал контекст данных вывести в отдельный класс но ошибка та же.
Раз у вас MainWindow
не имплементирует INPC и URI
— не dependency property, то смысла в привязке особого нет.
Попробуйте так:
public partial class ActiveInfo : Window
{
public ActiveInfo()
{
InitializeComponent();
}
public Uri URI
{
get => browser.Source;
set => browser.Source = value;
}
}
и XAML:
<Grid>
<WebBrowser Name="browser"/>
</Grid>
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Я пытаюсь перенести базу данных с локальной машины на удаленнуюИз локального SQL Server я создаю backup и сохраняю его в расшаренную папку на удаленном...
Я только осваиваю разработку в облакеМне нужно иметь доступ к коду с разных компов под одной учётной записью
Есть простой код: http://jsbincom/yulaturibe/edit?html,js,console,output