2
我正在嘗試爲列表框動態創建一個數據模板。這是一個自定義用戶控件。此UserControl具有DependencyProperty,它接受任何類型的IEnumerable <>。C#WPF以編程方式在Stackpanel中創建DataTemplate Dockpanel沒有任何效果
這工作得很好......但輸出始終是
- 屬性/值
- 屬性/值
如果對象包含2個屬性。但我希望這些屬性並排排列。像:
對象1:
- Porperty/Value屬性/值
對象2:
- 屬性/值屬性/值
那麼,我錯了嗎 ?我首先製作一個Stackpanel,並在Stackpanel中包含標籤的Dockpanels。
這是一個預覽它現在的樣子。
所以這是我的代碼來創建的DataTemplate:
DataTemplate _NewData = new DataTemplate();
FrameworkElementFactory _template = new FrameworkElementFactory(typeof(StackPanel));
foreach (var _FProperty in view.CurrentItem.GetType().GetProperties())
{
FrameworkElementFactory _firstTemplateChild = new FrameworkElementFactory(typeof(DockPanel));
FrameworkElementFactory _childOneForDock = new FrameworkElementFactory(typeof(Label));
_childOneForDock.SetValue(Label.ContentProperty, _FProperty.Name);
_firstTemplateChild.AppendChild(_childOneForDock);
FrameworkElementFactory _childTwoForChild = new FrameworkElementFactory(typeof(Label));
_childTwoForChild.SetBinding(Label.ContentProperty, new Binding(_FProperty.Name));
_firstTemplateChild.AppendChild(_childTwoForChild);
_template.AppendChild(_firstTemplateChild);
}
_NewData.VisualTree = _template;
ListBoxInPopUp.ItemTemplate = _NewData;
但是堆棧面板中的dockpanel不應該排列在一起嗎? – Mark 2011-01-24 23:02:08