2010-12-05 19 views
0

我有一個需要綁定到從API獲取的List的列表。清單看起來像這樣:如何綁定到ASP.NET ListView中的控件

struct DataItem { int level; string name; Guid key }; 
List<DataItem> myList = API.GetList(); 
ListView1.DataSource = myList; 
ListView1.DataBind(); 

所有這些工作正常顯示。但是,表格必須編輯級別值。我不確定如何做到這一點。我已經嘗試了listView上的事件處理程序,但它們從未被調用過。我已經嘗試了級別字段(包括Bind和Eval)和事件處理程序OnTextChanged的文本框,但事件處理程序從不被調用。 (我嘗試過AutoPostBack和ViewState啓用的各種組合。)

如何以編程方式編輯此數據結構?

回答

0

你試圖在這裏實現的雙向數據綁定不會像這樣工作 - List沒有實現INotifyPropertyChanged(有人糾正我,如果我錯了)。

您可以考慮使用普通的舊式DataTable,它可以是雙向裝箱的。如果性能不是一個非常關鍵的問題,那麼將List轉換爲DataTable(並返回,取決於您想要對修改後的數據執行什麼操作)非常簡單,而不需要爲列表類型的自定義實現而掙扎。

相關問題