覆盖WPF控件

时间:2010-05-10 08:21:32

标签: wpf user-controls

我在WPF中编写了一个“自动建议”文本框用户控件。它的行为有点像Hotmail中的“收件人”列表,允许用户输入项目列表,并在能够提供建议时提供建议。

主要控件是文本框,包装面板和列表框。文本框捕获用户输入。包装面板包含文本框并显示以前的条目。列表框用于显示建议。大多数情况下,列表框是隐藏的。

我在堆栈面板中使用了我的控件的多个实例。

我的问题是,当显示列表框时,它包含在控件高度的测量中。这会强制堆栈面板中的以下控件向下移动,如下图所示:

alt text http://img13.imageshack.us/img13/8366/example1a.png

alt text http://img208.imageshack.us/img208/7664/example2a.png

我已经尝试覆盖我的控件的测量,以便不包括列表框,但这只会导致列表框不可见。

我想要做的是让列表框覆盖堆栈面板中的任何后续控件,就像组合框的下拉列表一样。但是,我真的不知道该怎么做。有什么想法吗?

由于

2 个答案:

答案 0 :(得分:4)

您可能需要查看Popup控件。这就是ComboBox用来显示其选项的内容。祝你好运!

答案 1 :(得分:1)

尝试使用此代替文本框/列表框组合:A Reusable WPF Autocomplete TextBox