single.php

C# WinUI3でXamlに[VideoView]を追加する際[UIElementCollection のコレクションまたは辞書に追加できません]が表示される場合の対処法

C# WinUI 3アプリを作っていく途中で、調べたことを忘録的に投稿します。今回はWinUI3プロジェクトでXamlに[VideoView]を追加する際[型 VideoView の値は、型 UIElementCollection のコレクションまたは辞書に追加できません]が表示される場合の対処法です。

コレクションまたは辞書に追加できない

WinUI3に、FFmpegが利用できるLibVLCのアセンブリを追加して、動画の再生機能を実装しようとします。

NuGetの管理画面で[LibVLCSharp]と[LibVLCSharp.WPF]をインストールして

Xamlを編集して[VideoView]を追加したところ[型 VideoView の値は、型 UIElementCollection のコレクションまたは辞書に追加できません]が表示されてしまいました。

WPFアセンブリはWinUIに非対応

調べたところ、[LibVLCSharp.WPF]はWinUIには対応していませんでした。

WinUIに対応しているアセンブリは[VideoLAN.LibVLC.Windows]でした。

Xamlの編集も[xmlns:vlc=”using:LibVLCSharp.Platforms.Windows”]に変更したところ、[VideoView]の追加が行えました。

実行すると、Xaml画面からVLCのウィンドウが切り離されてしまうので、まだ何か不足しているみたいですが、とりあえず[VideoView]タグの追加はできました。

まとめ

今回は、WinUI3プロジェクトでXamlに[VideoView]を追加する際[型 VideoView の値は、型 UIElementCollection のコレクションまたは辞書に追加できません]が表示される場合の対処法について紹介しました。

NuGetで用意されている[LibVLCSharp.WPF]アセンブリはWinUIには対応していないようで、WinUIに対応しているアセンブリは[VideoLAN.LibVLC.Windows]でした。

WinUI 3 アプリで[VideoView]をXamlに追加した際にエラーになってしまう人の参考になれば幸いです。

スポンサーリンク

最後までご覧いただき、ありがとうございます。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です