1

私は xaml と Windows アプリ開発の初心者なので、この質問がばかげていると思われる場合は申し訳ありません。

テキストボックスを作成し、デザイナーでそれを右クリックして、[テンプレートの編集] => [コピーの編集] を選択し、それをカスタム辞書に入れました。

このテキスト ボックスのコントロール テンプレートでは、無効、フォーカスなどの視覚的な状態を見ました。そして、それらを変更してモバイルアプリを実行すると、テキストボックスがフォーカスされているときに境界線の色を変更するように変更が機能することがわかりました。

しかし、これが機能するためには、誰かが電話する必要があります

VisualStateManager.GoToState("Focused")

コントロールテンプレートに視覚的な遷移が表示されないため、テキストボックスがフォーカスされているため、誰がこれを呼び出しているので、これはどのように起こっていますか?

4

2 に答える 2

1

コントロール自体のコードは、 VisualStateManager.GoToState(...) を呼び出しています。

独自のカスタム コントロールの実装を開始するときは、利用可能なイベントをサブスクライブし、独自のロジックに基づいて状態を遷移させることができます。独自の 2 つのカスタム状態を持つカスタム コントロールの例を次に示します。

https://github.com/xyzzer/WinRTXamlToolkit/blob/master/WinRTXamlToolkit/Controls/WatermarkTextBox/WatermarkTextBox.cs

于 2016-06-18T13:35:59.657 に答える