0

xceed wpf Toolkit を使用しています。その中で私はChildWindowを使用しています。エスケープキーを押して、開いている子ウィンドウを閉じる必要があります。ここにコードがあります

<xctk:ChildWindow x:Name="ChildVendorsEdit" IsModal="True" WindowStartupLocation="Center" Caption="Edit" >
//My Content Here
</xctk:ChildWindow>

手伝って頂けますか ??

4

2 に答える 2

1

ボタンで「IsCancel」プロパティを使用します。

<Button Content="Discard" Click="ButtonDiscard_OnClick" IsCancel="True"></Button>

IsDefault も同様 (Enter キー)

于 2014-11-25T13:44:58.477 に答える
0

バージョン 2.0.0 以降を使用する場合は、イベントを入れChildWindowWindowContainer使用する必要がありますPreviewKeyDown

XAML:

<xctk:WindowContainer>
    <xctk:ChildWindow x:Name="ChildVendorsEdit" IsModal="True" WindowStartupLocation="Center" Caption="Edit"                          
                  PreviewKeyDown="ChildVendorsEdit_PreviewKeyDown" >                
    </xctk:ChildWindow>
</xctk:WindowContainer>

分離コード:

private void ChildVendorsEdit_PreviewKeyDown(object sender, KeyEventArgs e)
{
    if (e.Key == Key.Escape)
    {
        (sender as Xceed.Wpf.Toolkit.ChildWindow).WindowState = Xceed.Wpf.Toolkit.WindowState.Closed;
    }
}

2.0.0 より前のバージョンを使用する場合は、PreviewKeyDownイベントを使用する必要があります。

XAML:

<xctk:ChildWindow x:Name="ChildVendorsEdit" IsModal="True" WindowStartupLocation="Center" Caption="Edit"                          
                  PreviewKeyDown="ChildVendorsEdit_PreviewKeyDown" >            
</xctk:ChildWindow>

分離コード:

private void ChildVendorsEdit_PreviewKeyDown(object sender, KeyEventArgs e)
{
    if (e.Key == Key.Escape)
    {
        (sender as Xceed.Wpf.Toolkit.ChildWindow).WindowState = Xceed.Wpf.Toolkit.WindowState.Closed;
    }
}

イベント ハンドラーで閉じるChildWindowには、PreviewKeyDown次の 2 つのオプションがあります。

  • WindowStateに設定できますClosed
  • または、メソッドを呼び出すことができますClose
于 2013-10-20T17:36:44.937 に答える