4

各プラットフォームでカスタム レンダラーを使用するコンポーネントを作成しています。これをSpecialButton要素と呼びましょう。BindableProperty は値に対しては正常に機能しますが、ユーザーが共有コードからレンダラーの操作を呼び出せるようにしたいと考えています (フォーム コントロール コードからレンダラーのメソッドを呼び出します)。可能な解決策として DependencyService を見ていましたが、同じページに複数のボタンが表示される可能性があるため、それが機能するとは思わないため、作成されて Xamarin Forms 要素にリンクされた特定のレンダラー インスタンスが必要です。

では、Xamarin Forms コントロール要素が Forms フレームワークによってインスタンス化されたカスタム レンダラーにアクセスするエレガントな方法はありますか?

コントロールのプロパティを公開し、レンダラーがコンストラクターのプロパティに自分自身を設定できるようにすることを考えていましたが、これはハッキーに感じられ、コントロールのユーザーに公開したくないのです。

4

1 に答える 1