[WinUI 3][ComboBox] ドロップダウンが開かれた/閉じられたという状態を検知する

スポンサーリンク

この記事では ComboBox のドロップダウンが開かれた・閉じられたという状態を検知する方法について説明をします。

DropDownOpened について公式サイト情報はコチラを参照してください。

DropDownClosed について公式サイト情報はコチラを参照してください。

環境

開発環境 Microsoft Visual Studio Enterprise 2019
Version 16.11.5
Framework Microsoft .NET Framewohttps://blog.hiros-dot.net/?p=11007rk Version 4.8.04161

ドロップダウンが開かれた・閉じられたという状態を検知する

ドロップダウンが開かれた時は DropDownOpened イベントが、ドロップダウンが閉じられた時は  DropDownClosed イベントが発生します。

以下は  ドロップダウンが開かれた時に「開かれました」、閉じられた時に「閉じられました」のメッセージを表示する例です。

XAML の例

<Window
    x:Class="WinUISample.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:WinUISample"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d">

    <StackPanel Orientation="Vertical" HorizontalAlignment="Center">

        <ComboBox x:Name="myComboBox"
                  DropDownOpened="myComboBox_DropDownOpened"
                  DropDownClosed="myComboBox_DropDownClosed">
            <TextBlock Text="Apple" />
            <TextBlock Text="Banana" />
            <TextBlock Text="Grapes" />
            <TextBlock Text="Lemon" />
            <TextBlock Text="Orange" />
            <TextBlock Text="Pineapple" />
        </ComboBox>

        <TextBlock x:Name="myTextBlock" />
        
    </StackPanel>
</Window>

C# の例

以下はDropDownOpened イベントと、DropDownClosed イベント発生時のコード例です。TextBlock にメッセージを表示します。

private void myComboBox_DropDownOpened(object sender, object e)
{
    myTextBlock.Text = "開かれました";
}

private void myComboBox_DropDownClosed(object sender, object e)
{
    myTextBlock.Text = "閉じられました";
}
ドロップダウンが開かれたとき、閉じられた時のイベント処理例

ドロップダウンが開かれたとき、閉じられた時のイベント処理例

WinUi Tips

本サイトでまとめている WinUI Tips の一覧はこちらから確認できます。

Please follow and like us:

コメント

タイトルとURLをコピーしました