我想使用單擊對話框作爲不可編輯的數據顯示某些數值。但是調用DialogViewController.ReloadData不會更新綁定對象的數據。Monotouch-Dialog ReloadData不重新加載數據?
class AccountFormModel
{
[Section("Account data", "")]
[Caption("Balance")]
public string balance;
}
...
private void InitComponents()
{
accountFormModel = new AccountFormModel();
accountFormModel.balance = "TestTestTest";
bc = new BindingContext(this, accountFormModel, "AccountData");
dialogViewController = new DialogViewController(bc.Root);
dialogViewController.Autorotate = true;
}
private void RefreshData()
{
string b = SomeDatasource.Account.Balance.ToString("N4");
accountFormModel.balance = "$" + b;
dialogViewController.ReloadData();
}
調試表明accountFormModel.balance在refreshData方法被設置爲正確的值,但沒有在模擬器上的形式變化(保持TestTestTest)。我做錯了什麼?
嘿米格爾,所以如果我有一個大對象的列表(大約1000),我試圖建立一個大的可滾動列表,或許Dialog不是最適合的工具?我廣泛使用SyleStringElement,即使在Root.Add(mySection)調用完成後,它也需要大約3-4秒才能呈現UITableView(在3GS設備上)。我可以很輕鬆地重寫GetCell來完成同樣的事情,而不使用Dialog。如果我將它理解爲意味着Dialog不適合使用Elements API呈現大型列表,我是否正確理解了您的答案? – NovaJoe 2011-04-11 15:36:42