我已经对此进行了搜索,但我相信我想要实现略微不同的东西。
我有一个组合框,它设置为静态包含3个项目,例如Person1,Person2,Person3。
然后我有一个对象,例如名为Person。该对象将包含一个名为PersonType的属性,该属性可能是Person3。我想要做的是将Person对象绑定到组合框,并且在加载时,组合框应该将person3突出显示为所选项。我怎么能这样做呢?我希望它作为我的其他控件双向绑定。
public class Person : INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
private string _PersonType;
public string PersonType
{
get { return _PersonType; }
set
{
_Description = value;
NotifyPropertyChanged("PersonType");
}
}
public void NotifyPropertyChanged(string name)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(name));
}
}
}
答案 0 :(得分:0)
以下内容应该有效:
ddlPerson.SelectedItem = objPerson.PersonType;
答案 1 :(得分:0)
以下代码应达到您的目标。我在我的机器上运行它并且工作正常。
private void BindPerson()
{
Person p2 = new Person();
p2.PersonType = "Person2";
Person p3 = new Person();
p3.PersonType = "Person3";
ListItem person2ListItem = new ListItem();
person2.Text = p2.PersonType;
person2.Value = p2.PersonType;
listBox.Items.Add(person2ListItem);
ListItem person3ListItem = new ListItem();
person3.Text = p3.PersonType;
person3.Value = p3.PersonType;
person3.Selected = true; // This will make it selected
listBox.Items.Add(person3ListItem);
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindPerson();
}
}