Чтобы уточнить, что происходит.В основном у меня есть привязка ListView, которая указывает на список внутри объекта.В этом же объекте (но не в списке) у меня есть другой список, который содержит строки, используемые для выпадающего списка, и я не могу назначить его моему представлению списка, так как DataContext уже установлен для первого упомянутого списка.Может кто-нибудь предложить решение или, еще лучше, более эффективный способ справиться с этим?
Просмотр
<ListView ItemsSource="{Binding myModel.myCollection}" Grid.Row="1" Grid.Column="0">
<ListView.View>
<GridView>
<GridViewColumn Header="Name">
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBox Text="{Binding Name, Mode=TwoWay}"></TextBox>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn Header="Category Tag">
<GridViewColumn.CellTemplate>
<DataTemplate>
<ComboBox ItemsSource="{Binding myModel.CategoryList}"></ComboBox>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.View>
</ListView>
Модель
public class SiteUrlsModel : INotifyPropertyChanged
{
public string CaseName { get; set; }
public List<string> TestList => new List<string> { "Test1", "Test2", "Test3" };
public List<string> _categoryTagList;
public List<string> CategoryTagList
{
get => _categoryTagList;
set
{
if (_categoryTagList == value)
return;
_categoryTagList = value;
OnPropertyChanged();
}
}
private ObservableCollection<SiteUrlsModel> _myCollection;
public ObservableCollection<SiteUrlsModel> myCollection
{
get => _siteurlscCollection;
set
{
if (_siteurlscCollection == value)
return;
_siteurlscCollection = value;
OnPropertyChanged();
}
}
public event PropertyChangedEventHandler PropertyChanged;
protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
}
Для простоты я исключил ViewModel и Code-Behind, но после InitialiseComponent () у меня есть DataContext = new TestViewModel () и вМоя ViewModel У меня есть свойство, которое создает новый экземпляр моей модели, а также добавляет геттер, чтобы убедиться, что все доступно.Будьте уверены, что список заполняется. Я просто пытаюсь заполнить один выпадающий список отдельно.