Как получить строковое значение из списка в качестве выбранного пользователем? - PullRequest
0 голосов
/ 26 мая 2019

Я не могу получить строковое значение из списка после выбора одного элемента.

В моем списке есть изображения (источник ослепления) и TextBlock (источник ослепления).

Мой код на странице .xaml:

        <ListBox Name="carListBox" Height="431" Canvas.Left="28" Canvas.Top="65" Width="446" SelectionChanged="ListBoxOnSelection">
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <StackPanel Orientation="Horizontal">
                        <Image Name="brandImage" Source="{Binding Image}" Width="100" Height="150"></Image>
                        <Image Name="carImage" Source="{Binding Image}" Width="150" Height="150"></Image>
                        <TextBlock Name="textDisplay" Text="{Binding ShowDetail}" HorizontalAlignment="Center" VerticalAlignment="Center"></TextBlock>
                    </StackPanel>
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>

Мой код на странице .xaml.cs (C #)

private void ListBoxOnSelection (отправитель объекта, аргументы SelectionChangedEventArgs)

    {
       MessageBox.Show(carListBox.SelectedItem.ToString());
       string saveData = carListBox.SelectedItem.ToString();

    }

MessageBox не может отображать строковое значение, и я не могу получить значение после выбора пользователя.

MessageBox show [1] https://i.imgur.com/2VSjhgN.jpg

1 Ответ

0 голосов
/ 26 мая 2019

Вам нужно каким-то образом получить объект Car, прежде чем вы сможете получить доступ к его свойствам.

Примерно так:

private void ListBoxOnSelection(object sender, SelectionChangedEventArgs args)
{
 Car myCar=carListBox.SelectedItem as Car;
 if(myCar != null)
   MessageBox.Show(myCar.ShowDetail); //or any property.
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...