[英]Using VS2012 GUI to bind ListBox to List<T>
我覺得這是一個基本的問題,但是我花了2天的時間才能使其成功。 感謝您的時間。
Form
)
ListBox
string
string
List<MyDataElement>
使用GUI,我怎么可以綁定myListBox
到myDataList
? 更具體地講,我怎么去實例MyDataManager
使myListBox
獲取與該列表的值填充?
我可以毫不費力地創建DataSources,但無法獲取ListBox來顯示基礎列表的內容。 我努力了:
MyDataManager
對象 MyDataManager
類型的MyForm
中創建一個成員並將ListBox綁定到該成員 我都不能上班。 我也嘗試將DisplayMember屬性更改為無效。
順便說一句,我可以通過在MyForm
的主要方法中手動設置DataSource(例如, myListBox.DataSource = myDM.myDataList
)來使其正常工作,但是為了將來參考和我自己的觀點,我很樂意學習如何通過GUI(如果可能的話)。
public class MyDataElement
{
public string firstName { get; set; }
public string lastName { get; set; }
public override string ToString()
{
return firstName + " " + lastName;
}
}
public class MyDataManager
{
public List<MyDataElement> myDataList { get; set; }
// Constructor.
public MyDataManager()
{
myDataList = new List<MyDataElement>();
// Populate list for testing purposes.
myDataList.Add(new MyDataElement { firstName = "John", lastName = "Smith" });
myDataList.Add(new MyDataElement { firstName = "Jane", lastName = "Doe" });
}
}
在MyForm
的主要方法中:
// ...
myDM = new myDataManager();
InitializeComponents();
// ...
我也嘗試過反轉此順序。
您需要使用資源將視圖的DataContext與MyDataManager綁定(在您的情況下,將MyDataManager視為ViewModel),請參見這些anwsers 。 VS GUI將能夠找到您的MyDataManager類成員。 希望能幫助到你
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.