/// <summary>
 /// ���ͽ���任�¼�.
 /// </summary>
 /// <param name="direction">����.</param>
 /// <param name="selection">ѡ��.</param>
 private void SendCedeFocusEvent(Direction direction, Selection selection)
 {
     if (null != CedeFocusEvent)
     {
         CedeFocusEventArgs args = new CedeFocusEventArgs();
         args.FieldIndex = FieldIndex;
         args.Action = Action.None;
         args.Direction = direction;
         args.Selection = selection;
         CedeFocusEvent(this, args);
     }
 }
        /// <summary>
        /// ʧȥ�����¼�.
        /// </summary>
        /// <param name="sender">The sender.</param>
        /// <param name="e">The <see cref="CedeFocusEventArgs"/> instance containing the event data.</param>
        private void OnCedeFocus( Object sender, CedeFocusEventArgs e )
        {
            switch ( e.Action )
             {
                case Action.Home:

                   _fieldControls[0].TakeFocus( Action.Home );
                   return;

                case Action.End:

                   _fieldControls[FieldCount - 1].TakeFocus( Action.End );
                   return;

                case Action.Trim:

                   if ( e.FieldIndex == 0 )
                   {
                      return;
                   }

                   _fieldControls[e.FieldIndex - 1].TakeFocus( Action.Trim );
                   return;

                 default:
                     break;
             }

             if ( ( e.Direction == Direction.Reverse && e.FieldIndex == 0 ) ||( e.Direction == Direction.Forward && e.FieldIndex == ( FieldCount - 1 ) ) )
             {
                return;
             }

             int fieldIndex = e.FieldIndex;

             if ( e.Direction == Direction.Forward )
             {
                ++fieldIndex;
             }
             else
             {
                --fieldIndex;
             }

             _fieldControls[fieldIndex].TakeFocus( e.Direction, e.Selection );
        }
 /// <summary>
 /// ���ͽ���任�¼�.
 /// </summary>
 /// <param name="action">����.</param>
 private void SendCedeFocusEvent(Action action)
 {
     if (null != CedeFocusEvent)
     {
         CedeFocusEventArgs args = new CedeFocusEventArgs();
         args.FieldIndex = FieldIndex;
         args.Action = action;
         CedeFocusEvent(this, args);
     }
 }