Поделиться через


InputFocusController.TrySetFocus Метод

Определение

Пытается установить фокус на ContentIsland , связанном с InputFocusController.

public:
 virtual bool TrySetFocus() = TrySetFocus;
bool TrySetFocus();
public bool TrySetFocus();
function trySetFocus()
Public Function TrySetFocus () As Boolean

Возвращаемое значение

Boolean

bool

True, если фокус был успешно задан; в противном случае — false.

Примеры

В следующем примере показано, как указать, что фокус находится на элементе TextBox в ContentIsland на основе входных данных указателя.

void OnClick(PointerPoint clickLocation) 
{
    if (IsWithinBoundsOfTextBox(clickLocation))
    {
        InputFocusController focusController = InputFocusController.GetForIsland(myIsland);

        if (!focusController.HasFocus())
        {
            bool nowHasFocus = focusController.TrySetFocus();

            // Change styling of text box based on whether the Island received focus
            if (nowHasFocus)
            {
                DrawTextBoxBorder();
            }
            else
            {
                RemoveTextBoxBorder();
            }
        }
    }
}

Комментарии

Из-за других требований к обработке сообщений фокус может переместиться из ContentIsland к моменту обработки этого запроса.

Пользователь также может переместить фокус перед обработкой этого запроса.

Обработка этого запроса может быстро вызывать события GotFocus и LostFocus .

Применяется к