0

質問があります。Bindingアイテムをに追加するListBoxと、それらが垂直に追加されます。たとえば、 where ItemsSource = "{Binding Path = Name}"、 and Nameis Bill、オンラインの各文字の出力を取得しますListBox(次のように: B\ni\nl\nl)。私はどこで間違っていますか?

XAML:

<Window x:Class="ObservableColl.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">

    <Grid>
        <ListBox HorizontalAlignment="Left" Height="244" Margin="313,28,0,0" VerticalAlignment="Top" Width="177" ItemsSource="{Binding Path=Name}"/>
    </Grid>
</Window>

C#:

    class Customer
    {
        public string Name{get; set;}
    }

    class Customers
    {
        public ObservableCollection<Customer> customerOC{get; set;}
        public Customers()
        {
            customerOC = new ObservableCollection<Customer>();
        }
        public void AddCustomer(Customer c)
        {
             customerOC.Add(c);
        }
    }

public partial class MainWindow:Window
{
    Customers customers{get; set;}
    public MainWindow()
    {
        InitializeComponent();
        customers = new Customers();

        customers.AddCustomer(new Customer(){Name = "Frank"});

        this.DataContext = customers;
    }
}
4

1 に答える 1

1

あなたDataContextは顧客に設定されています。をandItemsSourceに設定する必要があります。これは、顧客の適切なプロパティを表示するためのものです。ObservableCollectionDisplayMemberPath

<ListBox ItemsSource="{Binding customerOC}" DisplayMemberPath="Name" />
于 2013-02-22T18:10:30.860 に答える