Итак, вот моя проблема:
Я хочу получить доступ к элементам (и их свойствам), которые связаны с ListBox через Bindable Collection, в методе другого класса,(ShellViewModel) Точнее: я хочу знать, какие элементы в этом списке в настоящее время выбраны.
Я использую C #, Caliburn.Micro и шаблон дизайна должен быть MVVM .
Если нажата кнопка «Оценить», в соответствии с выбранными ListBoxItems, будут вызваны разные методы.
Таким образом, XAML-код в ShellView работает нормально, а также «функциональный» код »работает ", но это просто работает, если я кодирую прямо в xaml.cs-файле.(большое нет, нет)
Поскольку я довольно новичок в этих темах, я попытался создать новый экземпляр View для доступа, но это просто даст мне контроль над ListBox без "зная "какие предметы выбраны в исходном экземпляре.
Вот общий список ListBox
<ListBox x:Name="MainListBox" ItemsSource="{Binding SCollection}"
Grid.Row="2" Grid.Column="1" Grid.ColumnSpan="6" Grid.RowSpan="1"
SelectionMode="Multiple"
ScrollViewer.VerticalScrollBarVisibility="Visible"
ScrollViewer.HorizontalScrollBarVisibility="Visible"
MaxHeight="300" MinHeight="200" MaxWidth="340" Margin="5">
<ListBox.ItemTemplate>
<DataTemplate>
<Border Margin="0,5">
<StackPanel>
<TextBlock Text="{Binding Path=Name}" FontWeight="Bold" Padding="3,5,5,5" />
<TextBlock Text="{Binding Path=Info}" FontWeight="SemiBold" Padding="3,5,5,5" />
</StackPanel>
</Border>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
<Button x:Name="Evaluate" Background="Blue" Grid.Column="1" Grid.Row="7" MinWidth="80" Margin="5" Content="Test" Grid.ColumnSpan="1" />
Итак, вот несколько вопросов:
Существует ли подобное решение, например, привязка «SelectedItem» через xaml, который привязан к доступной переменной, для нескольких выбранных элементов? (Может быть, я что-то там пропустил?)
Есть ли способ доступа к «оригинальному» экземпляру ListBox (и, следовательно, к «живым» выбранным элементам)?
Для ясности:Единственная проблема, помимо, возможно, других лучших решений, заключается в том, что я хочу, чтобы вызываемый метод «Evaluate», связанный с кнопкой, имел доступ к большому знанию того, какие элементы выбраны в моем ListBox.