WinUI 3 C++ コントロール解説 – InfoBar メッセージバー

メッセージバー(InfoBar)は色付きテキストボックスです。成功・警告・エラーなどの種類に応じて異なる配色を表示できます。メッセージ表示後は閉じることが可能で、コード側から表示/非表示を制御できます。

まずXAMLに3つのInfoBarを追加します

    <StackPanel Spacing="10">
        <TextBlock Text="InfoBar メッセージバー デモ:" FontSize="16"/>
        <InfoBar x:Name="InfoSuccess" Severity="Success" Title="完了" Message="操作が正常に完了しました。" IsOpen="False"/>
        <InfoBar x:Name="InfoWarning" Severity="Warning" Title="警告" Message="保存されていない変更があります。" IsOpen="False"/>
        <InfoBar x:Name="InfoError" Severity="Error" Title="エラー" Message="ファイルの読み込みに失敗しました。再試行してください。" IsOpen="False"/>
        <StackPanel Orientation="Horizontal" Spacing="10">
            <Button Content="成功メッセージを表示" Click="BtnShowInfoSuccess_Click"/>
            <Button Content="警告メッセージを表示" Click="BtnShowInfoWarning_Click"/>
            <Button Content="エラーメッセージを表示" Click="BtnShowInfoError_Click"/>
        </StackPanel>
    </StackPanel>Code language: HTML, XML (xml)

次に3つのボタンを追加し、クリックイベントを設定します。イベント内で各メッセージバーの表示・非表示を切り替えます。

void winrt::AppWinui::implementation::MainWindow::BtnShowInfoSuccess_Click(
winrt::Windows::Foundation::IInspectable const& sender, winrt::Microsoft::UI::Xaml::RoutedEventArgs const& e)
{
    InfoSuccess().IsOpen(true);
    InfoWarning().IsOpen(false);
    InfoError().IsOpen(false);
}

void winrt::AppWinui::implementation::MainWindow::BtnShowInfoWarning_Click(
winrt::Windows::Foundation::IInspectable const& sender, winrt::Microsoft::UI::Xaml::RoutedEventArgs const& e)
{
    InfoSuccess().IsOpen(false);
    InfoWarning().IsOpen(true);
    InfoError().IsOpen(false);
}

void winrt::AppWinui::implementation::MainWindow::BtnShowInfoError_Click(
winrt::Windows::Foundation::IInspectable const& sender, winrt::Microsoft::UI::Xaml::RoutedEventArgs const& e)
{
    InfoSuccess().IsOpen(false);
    InfoWarning().IsOpen(false);
    InfoError().IsOpen(true);
}
Code language: C++ (cpp)

WinUI 3 C++ コントロール解説 – InfoBar メッセージバー

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です