ListBox.ItemTemplate中的DataTemplate表现得很奇怪

时间:2014-11-08 12:42:10

标签: c# wpf xaml listbox datatemplate

当我动态地将ListBox绑定到ObservableCollection<Items>时,在按Button时,会追加ListBoxItemItems.toString()个孩子,其结果为Items.toString()在其内容属性中。虽然我不明白为什么它的孩子有myListBox.DataContext(myObservableCollection); myListBox.setBinding(ItemsControl.ItemsSourceProperty, new Binding()); 作为其内容属性,但这不是我的问题(不过我认为它是相关的)。

我的问题是,当我向其添加模板时,它并没有显示任何内容。我会在两种情况下划分我的代码。

场景1:

C Sharp

<ListBox x:Name="myListBox" Height="200" Width="425" Margin="312,94,113,256">         

XAML

ListBox

myListBox.DataContext(myObservableCollection); myListBox.setBinding(ItemsControl.ItemsSourceProperty, new Binding()); 显示:

- item1.toString()的返回结果;
- item2.toString()返回的结果;
...

场景2:

C Sharp

<ListBox x:Name="myListBox" Height="200" Width="425" Margin="312,94,113,256">                        
    <ListBox.ItemTemplate>
        <DataTemplate>
            <StackPanel Orientation="Horizontal">
                <!--property1 to property4 are properties of the type Items-->
                <TextBox Text="{Binding property1}"/>
                <Label Content="{Binding property2}"/>
                <Label Content="{Binding property3}"/>
                <Label Content="{Binding property4}"/>
            </StackPanel>
         </DataTemplate>
     </ListBox.ItemTemplate>
</ListBox>

XAML

ListBox

{{1}}显示:

什么都没有!

在此先感谢,我已经检查过的资源对我有所帮助但不完全有:DataContextDataTemplate和许多MSDN文章。

0 个答案:

没有答案