我有一个字符串数组,我需要将其值填充到列表框中。但是值不会在列表框中获取。这是我的代码
'<ListBox Name="listBox_1" Background="White" Margin="3,131,0,0">
<ListBox.ItemTemplate>
<DataTemplate>
<Border BorderThickness="0,1,0,0" BorderBrush="#FFC1BCBC" Width="480">
<Grid Height="80">
<TextBlock Name="list"
Text="{Binding Path=Names}"
FontSize="36"
TextWrapping="Wrap"
Foreground="Black" FontWeight="Normal"/>
</Grid>
</Border>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>'
'public class Names
{
//Model Class to hold Category details
public string Title { get; set; }
public string[] Names { get; set; }
public string[] Value { get; set; }
}'
'protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
base.OnNavigatedTo(e);
string[] name = ((Application.Current as App).obj_category.Names);
listBox_1.ItemsSource=name;
}'
我没有得到列表框中显示的名称。但我得到了边框线,如果字符串包含3个名称,我有三个空行。为什么它中的文字不显示?可以任何人帮助我。 / p>
答案 0 :(得分:2)
DataContext
中{p> ListBox
的{{1}}类型,string[]
DataContext
中的DataTemplate
是string
,但没有属性Name
。
将Text="{Binding Path=Name}"
更改为Text="{Binding}"
。