アプリケーションの起動時にログイン画面が表示され、カーソルがユーザー名のテキスト ボックスに入力するのを (クリックせずに) 待ちたいと思います。グリッドが読み込まれた後、カーソルをフォーカスすることができました。
HRESULT MainPage::OnLoaded(__in IXRDependencyObject* pRoot)
{
UNREFERENCED_PARAMETER(pRoot);
HRESULT hr = InitializeComponent();
if (FAILED(hr))
{
goto Error;
}
if (m_pLogin)
{
m_pLogin->AddLoadedEventHandler(CreateDelegate(this, &MainPage::Login_Loaded));
}
Error:
return hr;
} // OnLoaded
HRESULT MainPage::Login_Loaded (IXRDependencyObject* pSender, XRRoutedEventArgs* pArgs)
{
HRESULT hr = S_OK;
m_pUserName->Focus(&pBool);
return hr;
}
これにより入力できますが、カーソルは実際には表示されません。
ブラウザー プラグインに最初にフォーカスを設定する必要があることを説明する他のスレッドを見たことがありますが、これは埋め込み Silverlight アプリケーション (C++) であり、Silverlight Web ページ (C#) ではありません。マウスを使用せずにアプリケーションを起動するときに、アプリケーションにフォーカスを設定する方法がわかりません。助言がありますか?