我正在制作一个自定义下拉按钮(因为wpf中包含的按钮需要太多黑客才能正确设置样式)。现在我得到了按钮位,我需要添加下拉部分。
我的第一个想法是添加一个stackpanel并使用它来包含项目,但如果它离开按钮所在的网格边框就会被切断。接下来是popup原语,它在所有内容之上很好,但位置明智,它只是免费浮动,我还没有弄清楚如何使它按照它产生的按钮。我也尝试过使用contextmenu,但似乎根本没有定位控件,只是放在鼠标所在的位置..
无论如何,wpf是一个很大的包,我刚刚进入它,有人知道我可能找到我想要的方向吗?
答案 0 :(得分:1)
首选方法通常是使用Popup
。你有两个非常重要的属性Popup
在PlacementTarget
上为您的自定义Popup
设置Button
的绑定,然后使用Placement
将Popup
相应地定位到PlacementTarget
}}(Button
)
Placement
接受PlacementMode类型的枚举,为您提供了很多选项来定位Popup
。