Articles in this section
Category / Section

How to programmatically set focus to editor in Xamarin.Forms DataForm (SfDataForm)

1 min read

You can set the focus programmatically to the editor in Xamarin.Forms SfDataForm by customizing the existing editor.

Refer to the online user guide documentation for creating new custom editor in DataForm.

C#

Set focus to view on loading in OnInitializeView method using Focus method.

public class DataFormTextEditorExt : DataFormTextEditor
{
    public DataFormTextEditorExt(SfDataForm dataForm) : base(dataForm)
    {
    }
    protected override void OnInitializeView(DataFormItem dataFormItem, Entry view)
    {
        base.OnInitializeView(dataFormItem, view);
        if (dataFormItem.Name == "Name")
        {
            view.Focus();
        }
    }
}

C#

Set focus to the view automatically at run time by getting the particular editor using EditorView.

private void OnSetFocus(object sender, EventArgs e)
{
    var dataFormItem = dataForm.ItemManager.DataFormItems["Name"];
    if (dataFormItem != null)
    {
        if (dataFormItem.TextInputLayout != null)
            dataFormItem.TextInputLayout?.InputView?.Focus();
        else
            dataFormItem.EditorView.Focus();
    }
}

View sample in GitHub

 

Did you find this information helpful?
Yes
No
Help us improve this page
Please provide feedback or comments
Comments (0)
Please sign in to leave a comment
Access denied
Access denied