PG.Lib

アプリ開発関連とかガジェット関連とか

サクッと設定画面的なものを出す(Flyout)

設定画面とかで使うFlyoutは、最近では簡単に出すことができる。

(昔はApp.xaml.csとかに色々書いたよね・・・)

プロジェクトにフォームを追加する

ポップアップの設定 というのがそう。

 

ソース側から呼び出す

たとえばボタンクリックイベントに。

void btnAdd_Click(object sender, RoutedEventArgs e)
{
    // フライアウト
    TaskFlyout taskFlyout = new TaskFlyout();
    // 幅を設定
    taskFlyout.Width = 460;
    // チャームへ戻らないように表示
    taskFlyout.ShowIndependent();
    // 閉じた時のイベント
    taskFlyout.Unloaded += taskFlyout_Unloaded;
}

ShowIndependent で開かないと、←ボタンした時にチャームが出てしまうので注意。

また、閉じたときに何か処理したい(再読み込みとか)ときは、Unloadedイベント で定義しておく。

 

フライアウト内で閉じるには

void btnUpdate_Click(object sender, RoutedEventArgs e)
{
    this.Hide();
}

フライアウト内のボタンで閉じる時には Hide を使う。

 

小さな登録系の処理なんかは、いちいち画面遷移せず、フライアウトで出してしまうのがスマートな気がする。