WPF浮动列表框

时间:2011-02-15 17:23:34

标签: wpf layout

我有一个文本框,我希望与列表框结合使用,当用户键入文本框时,某些项目将显示在列表框中,用户可以从那里选择它们。我正在寻找的是类似于AutoCompleteBox的行为。遗憾的是,由于几个原因,我不能在我的项目中使用现有的AutocompleBox,因此我试图自己提出类似的行为。有什么想法吗?

编辑: 我想避免使用工具提示,因为这似乎是一个黑客。此外,当显示列表框时,不应在控件或其他位置更改布局。是否有类似CSS样式溢出的东西?

2 个答案:

答案 0 :(得分:1)

好的,看起来像我正在寻找的“Popup”。它有一些自己的怪癖,但到目前为止它工作正常。我几乎像这样使用它..

<DockPanel>
    <TextBox Text="{Binding Value}"/>

    <Popup Name="popOptions" Width="300" Height="100" AllowsTransparency="True" StaysOpen="False">
      <ItemsControl ClipToBounds="False" Background="White" MouseLeftButtonUp="ItemsControl_MouseLeftButtonUp">
        <sys:String>ITEM ONE</sys:String>
        <sys:String>ITEM TWO</sys:String>
        <sys:String>ITEM THREE</sys:String>
      </ItemsControl>
    </Popup>
</DockPanel>

我正在捕捉其他控制事件以决定何时以及何时不显示它。

答案 1 :(得分:0)

您可以将ListBox放在TextBox的工具提示

我不确定这是否是您尝试完成任务的最佳方式,但它可以制作浮动列表框