レイアウトクラスのいずれかにカスタムレンダラーを書き込もうとすると、「コントロール」プロパティがnullと表示されます。レンダラーはすでにネイティブコントロールのラッパーであるため、問題はありませんが、エフェクトを作成するときは問題ありません。コントロールプロパティが割り当てられていないので、エフェクトを使ってレイアウトクラスをカスタマイズすることはできません。これはバグですか?レイアウトのカスタムレンダラーとエフェクトの「コントロール」プロパティ
0
A
答えて
0
レイアウトにはレンダラーがなく、レンダラーもネイティブビューもないため(Control
はありません)、Effect
で変更することはできません。
0
PlatformEffect
クラスはContainer
と呼ばれる別のプロパティを持っています。このプロパティは、Control
がnullの場合にも使用できます。レイアウトで。
0
私は元の投稿と同じ問題を見ました。
私はiOSのPlatformEffect<UIView, UILabel>
を継承していました。私がデバッグしていたとき、コントロールはnullでした。私はPlatformEffect
から継承するために私のエフェクトを変更し、コントロールを((UILabel)Control)
としてキャストし、すべてが機能し始めました。 https://developer.xamarin.com/guides/xamarin-formsを:
は
MultilineTruncateLabelEffect : PlatformEffect<UIView, UILabel>
{
protected override void OnAttached()
{
var effect = (MultilineEffect) Element.Effects.FirstOrDefault(e => e is MultilineEffect);
if (effect != null)
{
Control.Lines = effect.Lines;
}
}
}
このリンクによるファイン
public class MultilineTruncateLabelEffect : PlatformEffect
{
protected override void OnAttached()
{
var effect = (MultilineEffect) Element.Effects.FirstOrDefault(e => e is MultilineEffect);
if (effect != null)
{
((UILabel)Control).Lines = effect.Lines;
}
}
}
関連する問題
- 1. .axmlレイアウトからAndroidコントロール用のXamarin.Formsカスタムレンダラー
- 2. xamarin.formsカスタムレンダラーのviewmodelプロパティにアクセス
- 3. カスタムレンダラー:丸いボタン用のカスタムレンダラー
- 4. プロパティの更新ページまたはタブのコントロールのレイアウト
- 5. MVC 2の表示レイアウトCSSコントロールのレイアウト
- 6. Java JComboBoxカスタムレンダラーとGTK
- 7. Angular2のカスタムレンダラー
- 8. グリッドのカスタムレンダラー
- 9. ボタンのカスタムレンダラー
- 10. UIPickerViewのカスタムレンダラー
- 11. Androidレイアウトのプロパティ
- 12. Webコントロールのプロパティ
- 13. チェックボックスノードツリー、カスタムレンダラー
- 14. カスタムレンダラーのネイティブコントロールメソッドをオーバーライド
- 15. ボタン用のXamarinカスタムレンダラー
- 16. MVVM添付プロパティのターゲットと元のコントロール
- 17. ピクチャボックス(.gif)内のコントロールの点滅エフェクトを削除する方法
- 18. リストビューとアイテム選択/タップのカスタムレンダラー
- 19. TableLayoutPanelのコントロールの列のプロパティ
- 20. Xamarin.Forms MasterDetailPageカスタムレンダラー
- 21. radコントロールのプロパティの変更
- 22. コントロールの "value"プロパティの取得
- 23. iOS UIMenuController Xamarinフォームのカスタムレンダラー
- 24. aspのEditTemplateプロパティ:GridViewコントロール
- 25. JQuery動的IDコントロールのプロパティ
- 26. UITableViewCellハイライトとエフェクト
- 27. jQueryUIエフェクトとjqGrid
- 28. 共有レイアウトのバインドGridLookupコントロールmvc 5
- 29. vb.netコントロールのレイアウト順を変更する
- 30. XamarinフォームWinRT Entryカスタムレンダラー
を働い、彼らが持っているヌル制御を返さ/カスタムレンダラー/レンダラー/。それらはiOSのAndroidおよびUIView派生物のView派生物です。 –
彼らは「持っている」。たとえば、BoxViewのカスタムレンダラーを使用しています。テーブルに指定されているレンダラー "Element.ViewGroup"からアクセスできます。しかし、 "コントロール"はnullです。 –