WPF绑定Listbox layoutpanel

时间:2013-08-27 16:00:32

标签: wpf binding listbox devexpress

我正在使用devexpress,我想与Listbox进行绑定,但是我有一个错误。这是我的代码:

<ListBox x:Name="_list" >                            
    <ListBox.ItemTemplate>
        <DataTemplate>
            <dxd:LayoutPanel 
                Caption="{Binding nameList}"
                AllowHide ="False" AllowFloat="False"                                            
                GotFocus="panel_GotFocus" >

                <TextBox Text="Hello" />

             </dxd:LayoutPanel>                                   

         </DataTemplate>
     </ListBox.ItemTemplate>                            
 </ListBox>    

使用此代码,Caption {Binding nameList}为空。

我试过这个。

<ListBox x:Name="_list" >                            
        <ListBox.ItemTemplate>
            <DataTemplate>
                <Grid>
                     <TextBox Text="{Binding nameList}" />
                 </Grid>                                                                      
             </DataTemplate>
         </ListBox.ItemTemplate>                            
     </ListBox> 

在这种情况下,TextBox中的文本是正确的,我需要使用第一个代码。

1 个答案:

答案 0 :(得分:0)

您似乎对如何使用此ListBox感到有些困惑。首先,您需要一个collection属性来绑定到ListBox.ItemsSource属性。假设您有一组名为User的{​​{1}}个对象:

Users

现在我们想要定义每个<ListBox ItemSource="{Binding Users}" /> 的显示方式...... User类的所有属性都可用于User内的Binding。假设DataTemplate类有两个属性; UserName

Age

然后把它们放在一起:

<DataTemplate DataType="{x:Type YourDataTypeNamespace:User}">
    <StackPanel>
        <TextBox Text="{Binding Name}" />
        <TextBox Text="{Binding Age}" />
    </StackPanel>
</DataTemplate>