2010-08-23 43 views
0

我想製作一個(非常輕量級)雙向綁定數據存儲。值必須通過名稱訪問。我正在考慮使用2個數組:cf.net中數組綁定的DataTable類型

public class MyBindingDatastore{ 
    public string[] _names = new string[]{"Field1", "Field2", "Field3"} 
    public object[] _values = new object[]{ DateTime.Now, "MyValue", 1} 
} 

第一個數組用於存儲字段名稱(總是爲1行)。第二個數組(如果超過1條記錄,也可以是2D)表示值矩陣。 使用GUI窗口小部件(器Resco的DetailView或任何支持2路數據綁定),我想指定:

MyControl.DataMember = "Field1"; 
MyControl.DataSource = new MyBindingDatastore(); 

數據綁定的結果應該被正確地從值陣列顯示的數值。 GUI小部件內部的值發生更改後,必須在數據存儲(值數組)中進行更改。

任何想法如何實現?或者,更好地使用更臃腫的DataTable類來模仿數據表綁定(我相信DataTable對數組有很多開銷)?

回答

0

如果你想要使用DataBinding,你應該堅持使用DataTable。否則,你將不得不實施自己的數據綁定。如果你關心內存大小,尋找方法來儘量減少一次加載到內存的數據量。

+0

我將在每個數據存儲中只有一行。但是會有大約100個數據存儲區。 – FrenkR 2010-08-23 18:22:18

+0

我沒有使用DataTable 1行。當然,我想要更輕量級的組件,但使用數據表是現在最簡單的方法。 – FrenkR 2010-08-27 19:38:46

相關問題