Как вы, вероятно, узнали, использование UITableView немного сложнее.Однако есть замечательная библиотека для MonoTouch под названием MonoTouch.Dialog , которая делает все намного проще.
В следующем примере кода MonoTouch.Dialog используется для ответа на ваш вопрос (насколько я понимаюдайте мне знать, если мой ответ не соответствует вашему желанию).
UIBarButtonItem [] selection_buttons;
void Process (IList<Element> list, bool value)
{
foreach (Element e in list) {
CheckboxElement cb = e as CheckboxElement;
if (cb == null)
continue;
cb.Value = value;
cb.GetImmediateRootElement ().Reload (cb, UITableViewRowAnimation.None);
}
}
void Test ()
{
Section s = new Section ("Select items");
for (int i = 0; i < 10; i++)
s.Add (new CheckboxElement (i.ToString ()));
var root = new RootElement (String.Empty);
root.Add (s);
var dv = new DialogViewController (root, true);
// keep buttons in a field, not a local variable, to ensure it won't be GC'ed away
if (selection_buttons == null) {
selection_buttons = new UIBarButtonItem [] {
new UIBarButtonItem ("Deselect All", UIBarButtonItemStyle.Plain, delegate {
Process (s.Elements, false);
}),
new UIBarButtonItem ("Select All", UIBarButtonItemStyle.Plain, delegate {
Process (s.Elements, true);
})
};
}
dv.NavigationItem.SetRightBarButtonItems (selection_buttons, true);
NavigationController.PushViewController (dv, true);
}
Веселитесь с MonoTouch (и MonoTouch.Dialog)!