Xamarin表单WinRT Entry自定义渲染器

时间:2016-05-09 00:54:52

标签: windows windows-runtime win-universal-app xamarin.forms custom-renderer

我正在尝试让条目在聚焦时选择所有文本。我有一个自定义渲染器在Android上这样做,但希望它也适用于Windows 8。如何在Xamarin Forms中为Windows创建自定义渲染?这就是我所拥有的:

[assembly: ExportRenderer(typeof(Xamarin.Forms.Entry), typeof(DrivingLog.Windows.MyEntryRenderer))]
namespace DrivingLog.Windows{

    public class MyEntryRenderer : EntryRenderer {

        protected override void OnElementChanged(ElementChangedEventArgs e) {

            base.OnElementChanged(e);

            if (e.OldElement == null) {

                var nativeEditText = (global::Windows.UI.Xaml.Controls.TextBox)Control;

                nativeEditText.ManipulationStarted += (object sender, ManipulationStartedRoutedEventArgs args) => {

                    nativeEditText.SelectAll();

                };

            }

        }

    }

}

1 个答案:

答案 0 :(得分:0)

我发现了问题,渲染器类位于Main Page.xaml.cs文件中。它需要在一个没有与之关联的xaml的文件中,以便将组件标记识别为Xamarin Forms 2.0