ObersvableCollection에 저장된 각 개체의 값을 ComboBox에 바인딩하고 싶습니다. 불행히도 그것은 작동하지 않습니다. 코드에서 목록에 저장된 콤보 상자에 개체 값 바인딩
<ComboBox Grid.Column="1" Margin="0,0,0,5" VerticalContentAlignment="Center" HorizontalContentAlignment="Center" FontSize="15" ItemsSource="{Binding Path=UserAccounts}" >
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding EMailAddress}"/>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
내가 DataContext를 설정 뒤에 :
[XmlRoot]
public class AccountSettingsObj : ModelBase
{
public string FirstName { get; set; }
public string LastName { get; set; }
private string _eMailAddress;
public string EMailAddress
{
get { return _eMailAddress; }
set
{
_eMailAddress = value;
OnPropertyChanged("EMailAddress");
}
}
}
감사 :
public class PersitentDataModelUserSettings : ModelBase
{
private static PersitentDataModelUserSettings instance = new PersitentDataModelUserSettings();
public static PersitentDataModelUserSettings Instance
{
get { return instance; }
set { instance = value; }
}
private ObservableCollection<AccountSettingsObj> _userAccounts = new ObservableCollection<AccountSettingsObj>();
public ObservableCollection<AccountSettingsObj> UserAccounts
{
get { return _userAccounts; }
set
{
_userAccounts = value;
OnPropertyChanged("UserAccounts");
}
}
}
이 객체 유형 :
여기this.DataContext = PersitentDataModelUserSettings.Instace.UserAccounts;
가 모델입니다! 당신은이에 콤보 상자 ItemSource을 설정하는
작동하지 않으면 콤보 상자에 항목이 없거나 빈 줄이 가득한 콤보 상자에 있습니까? – Josh
도 아니다. 콤보 박스 높이는 목록에 몇 개의 항목이 있더라도 변경되지 않습니다. – aDoubleSo
높이가 변하지 않는다는 것은 무엇을 의미합니까? 당신이 가지고있는 것은 높이를 변화 시켜서는 안됩니다 : 그것은 당신의 UserAccounts로 콤보 박스 드롭 다운리스트를 채워야합니다. UserAccounts 컬렉션에 몇 개의 항목이 있습니까? – Mashton