|
public partial class MainPage : ContentPage
{
public MainPage()
{
InitializeComponent();
sfGrid.DataGridLoaded +=
SfGrid_DataGridLoaded;
sfGrid.SelectionController = new
CustomRowSelectionController(this.sfGrid);
}
private void
SfGrid_DataGridLoaded(object? sender, EventArgs e)
{
sfGrid.GetVisualContainer().Focus();
}
}
public class CustomRowSelectionController :
DataGridRowSelectionController
{
public
CustomRowSelectionController(SfDataGrid dataGrid) : base(dataGrid)
{
}
protected override void
ProcessKeyDown(KeyEventArgs args, bool isCtrlKeyPressed, bool
isShiftKeyPressed)
{
base.ProcessKeyDown(args,
isCtrlKeyPressed, isShiftKeyPressed);
if (DataGrid?.CurrentCell != null
&&
(args.Key == KeyboardKey.Left ||
args.Key == KeyboardKey.Right ||
args.Key == KeyboardKey.Up ||
args.Key == KeyboardKey.Down ||
args.Key == KeyboardKey.Tab ||
args.Key == KeyboardKey.Enter))
{
DataGrid.BeginEdit(DataGrid.CurrentCell.RowIndex,DataGrid.CurrentCell.ColumnIndex);
}
}
}
|