Итак, у меня есть Collection
внутри моего ViewModel
:
public class ViewModel : INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
private ObservableCollection<NetworkInterface> _interfaces;
public ViewModel()
{
Interfaces = NetworkInterface.ReadAll();
}
public ObservableCollection<NetworkInterface> Interfaces
{
get { return _interfaces; }
set
{
_interfaces = value;
NotifyPropertyChanged();
}
}
private void NotifyPropertyChanged([CallerMemberName] String propertyName = "")
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
Это NetworkInterface
является реализацией PropertyChanged
, и когда приложение полностью заполняется элементами.
Инициализировать мой ViewMode
:
public MainWindow()
{
InitializeComponent();
viewModel = new ViewModel();
}
В моем приложении есть еще один Page
, который загружается внутри Frame
после кнопки Click
:
<Grid Name="GridMain" Grid.Row="1">
<Frame Name="MyFrame"
NavigationUIVisibility="Hidden"
Source="Pages/home.xaml"/>
</Grid>
Загрузить Page
:
Home home = new Home();
MyFrame.Content = home;
А внутри моего ComboBox
:
<ComboBox ItemsSource="{Binding Interfaces}" Height="30" Width="300"/>
Я тоже попробую:
<ComboBox ItemsSource="{Binding Path=Interfaces}" Height="30" Width="300"/>
Но все равно мой ComboBox
пуст
EDIT
Если это ComboBox
находится внутри основного приложения, а не внутри Page
, это нормально работает.