2016-12-18 6 views
0

Моя форма имеет только управление сеткой и ленточный бар. Я хочу, чтобы автофокусировка была первой ячейкой сетки при загрузке формы.Как предотвратить автоматическую фокусировку панели поиска в управлении сетью devexpress

Проблема: когда форма загружена, она автоматически фокусируется на панели поиска сетки вместо ячейки сетки.

Я пробовал вот так, но не работает. Помогите, спасибо всем.

private void gcStockDelivery_Load(object sender, EventArgs e) 
    { 
     BeginInvoke(new MethodInvoker(() => 
     { 
      gvStockDelivery.FocusedColumn = gcBarCode; 
      gvStockDelivery.ShowEditor(); 
     })); 
    } 

enter image description here

Код для выбора другого контроля после FormLoad()

protected override void OnShown(EventArgs e) 
{ 
    base.OnShown(e); 
    txtPurchaseOrder.BeginInvoke(new Action(() => 
    { 
     txtPurchaseOrder.Select(); 
    })); 
} 
+1

Я нашел способ только сосредоточиться на другой элемент управления, когда форма загружена, не клетка сама по себе –

+0

вы можете показать нам код, где вы дружнее фокус другого элемента управления? – jambonick

+0

@ jambonick Я добавил, как выбрать другой элемент управления после FormLoad(). –

ответ

0

Извините за поздний ответ. Я получил душу там XtraGrid AutoFilterRow focusing

Это работает.

protected override void OnShown(EventArgs e) 
{ 
    base.OnShown(e); 
    gcDamageItems.BeginInvoke(new Action(() => 
    { 
     gcDamageItems.ForceInitialize(); 
     gvDamageItems.MoveFirst(); 
     gvDamageItems.FocusedColumn = gvDamageItems.VisibleColumns[0]; 
     gvDamageItems.ShowEditor(); 
    })); 
} 
0

Find Panel всегда сосредоточен, когда она видна по форме нагрузки, так что вы должны изменить фокус вручную. Вы показали нам код, чтобы изменить другой элемент управления. Как насчет того, выбрали ли вы саму сетку в качестве элемента управления, а затем настроили событие GotFocus, которое вы только что выбрали? Вы можете попробовать этот код

Это ваш первый заказ:

protected override void OnShown(EventArgs e) 
{ 
    base.OnShown(e); 
    yourGridControl.BeginInvoke(new Action(() => 
    { 
     yourGridControl.Select(); 
    })); 
} 

Это ваш второй заказ:

private void yourGridControl_GotFocus(Object sender, EventArgs e) { 
    GridView gridView1 = Me.ViewCollection.Item(0) 
    gridView1.FocusedColumn = gridView1.VisibleColumns(0) 
    gridView1.FocusedRowHandle = 0 

} 
Смежные вопросы