我在Popup-DropDown中有一个带有ListView +“X”-Button的WPF Combobox。我在列表视图中显示搜索结果。
当用户在弹出窗口中单击“X”-Button时,如何才能使弹出窗口关闭?
答案 0 :(得分:0)
您可能必须为永久打开的列表框编写自定义控件模板,或者将默认控件模板更改为此类行为。在控件模板中,您必须将Popup的StaysOpen属性设置为true并使按钮切换为该值
简短的例子
<Window x:Class="WPFComboSample.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid>
<ComboBox Name="Combo">
<TextBox></TextBox>
<Button Name="Close" Width="150" Height="200" Click="Close_Click">Close</Button>
</ComboBox>
</Grid>
namespace WPFComboSample
{
/// <summary>
/// Interaktionslogik für MainWindow.xaml>
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void Close_Click(object sender, RoutedEventArgs e)
{
Combo.IsDropDownOpen = false;
}
}
}