Элемент ListBox выделен или выбрана путаница - PullRequest
0 голосов
/ 22 июня 2011

в моем ListBox у меня есть 5 чисел 1 - 5, SelectedItem является привязкой данных в двухстороннем режиме к SelectedAmount, свойству int со значением по умолчанию 1, когда я запускаю приложение, у меня 1 выбрано как значение и выделено на моемListBox, это очень хорошо, но теперь всякий раз, когда я изменяю значение на 2 или любое другое значение, ListBox показывает новое значение, но оно не подсвечивается, а SelectedAmount по-прежнему содержит старое значение, что явно плохо, я хочу всякий раз, когдаПользователь изменяет выбранное значение, SelectedAmount, чтобы получить новое значение напрямую, и пользователю теперь, после того как он сделал свой выбор, пришлось снова щелкнуть, чтобы выделить его.какие-нибудь идеи?

<ListBox ItemsSource="{Binding SiliconAmounts}" SelectedItem="{Binding SiliconAmount,Mode=TwoWay}" Height="31" HorizontalAlignment="Left" Margin="83,148,0,0" VerticalAlignment="Top" Width="149" IsTabStop="True" TabIndex="4" />

моя база данных привязки к selectedItem выглядит как

public int SiliconAmount
    {
        get
        {
            return _SiliconAmount;
        }
        set
        {
            if (_SiliconAmount != value)
            {
                _SiliconAmount =value;
                OnPropertyChanged("SiliconAmount");
            }
        }
    }

моя собственность элементов выглядит как

public ObservableCollection<int> SiliconAmounts
    {
        get { return _SiliconAmounts; }
        set
        {
            if (_SiliconAmounts != value)
            {
                _SiliconAmounts = value;
                OnPropertyChanged("SiliconAmounts");
            }
        }
    }

в моем конструкторе viewModel

SiliconAmounts = new ObservableCollection<int>();
        SiliconAmounts.Add(1);
        SiliconAmounts.Add(2);
        SiliconAmounts.Add(3);
        SiliconAmounts.Add(4);
        SiliconAmounts.Add(5);

заранее спасибо

1 Ответ

0 голосов
/ 22 июня 2011

После публикации и прочтения комментариев, похоже, проблема заключается в стилизации пользовательского интерфейса. Я обнаружил, что Expression Blend - это полезный инструмент для написания стилей и шаблонов элементов управления. Я склонен немного программировать прямой XAML, но в Expression есть редактор для этого и несколько хороших инструментов для настройки визуальных состояний, визуальных триггеров, выбора цветов и многого другого. Вы можете получить пробную версию Blend здесь . Другим инструментом, который используют многие разработчики WPF, является Kaxaml .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...