【发布时间】:2014-07-12 23:46:11
【问题描述】:
当我将项目 (RadioButtons) 添加到面板时,它们会彼此重叠显示:
foreach (var item in items)
{
this.ContentPanel.Children.Add(new RadioButton() { Content = ... );
}
为什么会这样?我怎样才能让它们重叠出现?
【问题讨论】:
-
使用带有数据绑定的列表框
-
ContentPanel 是什么类型的?
-
如果您使用代码(在 XAML 之外)在 WPF 中为简单的事情生成控件,那么您这样做错误。创建一个 ItemsControl,将其绑定到 pubs 列表。创建一个 DataTemplate,定义 Pub 与 RadioButton 一起显示,并将控件的属性绑定到按钮
-
考虑使用DataBindings和ItemTemplating
-
听起来
ContentPanel是一种允许控件重叠的面板类型,例如Grid或Canvas。将其更改为以特定布局排列其项目的面板,例如<StackPanel>,它将起作用。
标签: c# wpf layout panel overlap