我有一个用于 iOS 的自定义编辑器,但对于 UWP,我使用另一个名为SfRichTextEditor
.
现在我想知道如何像可共享的类一样创建,因为它们具有相同的可绑定属性而不是做我目前所做的,这是ContentView
在它们之上创建一个,这导致:
出于性能目的不必要的嵌套
重复代码
似乎有些绑定有问题(未验证,但有些奇怪)。
<ContentView> <OnPlatform x:TypeArguments="View"> <OnPlatform.Platforms> <On Platform="iOS"> <controls:CustomIOSEditor/> </On> <On Platform="UWP"> <controls:CustomUWPEditor/> </On> </OnPlatform.Platforms> </OnPlatform> </ContentView>
因此,如果可能的话,我希望有一个可共享的基类来重用代码,而不是这种方法。
这些是我今天拥有的 x2 控件。
我的 iOS 自定义控件:
public class CustomIOSEditor : Editor // Using regular xamarin editor
{
public static readonly BindableProperty StringResultCommandProperty =
BindableProperty.Create(
nameof(StringResultCommand),
typeof(ICommand),
typeof(CustomIOSEditor),
default(ICommand));
public object StringResultCommandParameter
{
get => GetValue(StringResultCommandParameterProperty);
set => SetValue(StringResultCommandParameterProperty, value);
}
}
我的 UWP 自定义控件:
public class CustomUWPEditor : SfRichTextEditor // Using SfRichTextEditor instead here.
{
public static readonly BindableProperty StringResultCommandProperty =
BindableProperty.Create(
nameof(StringResultCommand),
typeof(ICommand),
typeof(CustomUWPEditor),
default(ICommand));
public object StringResultCommandParameter
{
get => GetValue(StringResultCommandParameterProperty);
set => SetValue(StringResultCommandParameterProperty, value);
}
}