私のアプリには、連絡先情報を表示するための WebView があります。を使用して外部から読み込みたい Web サイトへのリンクがありますDevice.OpenUri()
。私はFreshMvvmを使用しており、ViewModel の WebView からイベントをインターセプトしNavigating
、外部ページを WebView にロードするデフォルト アクションをキャンセルしたいと考えています。
ViewModel コマンドを呼び出すCorcav.Behaviorsプラグインを使用してみました。
<WebView
HorizontalOptions="Fill"
VerticalOptions="FillAndExpand"
Source="{Binding WebViewSource}">
<b:Interaction.Behaviors>
<b:BehaviorCollection>
<b:EventToCommand
EventName="Navigating"
Command="{Binding NavigatingCommand}"
CommandParameter="{Binding}"/> <!-- what goes here -->
</b:BehaviorCollection>
</b:Interaction.Behaviors>
</WebView>
しかし、CommandParameter がどうあるべきかわかりません。タップされたリンクの URI が必要ですが、デフォルトの動作が発生しないようにする方法がわかりません。
これが最善のアプローチですか、それとも別の方法を検討する必要がありますか?