void InitializeDatasource()
        {
            var view = InitializeCouchbaseView();

            var query = view.CreateQuery().ToLiveQuery();

            query.Descending = true;

            Datasource.Query         = query;
            Datasource.LabelProperty = DocumentDisplayPropertyName; // Document property to display in the cell label
            Datasource.Query.Start();

            var doneView = Database.GetExistingView("Done") ?? Database.GetView("Done");

            DoneQuery          = doneView.CreateQuery().ToLiveQuery();
            DoneQuery.Changed += (sender, e) => {
                String val;
                var    label = TableView.TableHeaderView as UILabel;

                if (DoneQuery.Rows.Count == 0)
                {
                    val = String.Empty;
                }
                else
                {
                    var row = DoneQuery.Rows.ElementAt(0);
                    var doc = (IDictionary <string, string>)row.Value;

                    val = String.Format("{0}: {1}\t", doc["Label"], doc["Count"]);
                }
                label.Text = val;
            };
            DoneQuery.Start();
        }
Пример #2
0
        void InitializeDatasource()
        {
            var view = Database.ViewNamed(DefaultViewName);

            LiveQuery query = view.Query.AsLiveQuery;

            query.Descending = true;

            Datasource.Query         = query;
            Datasource.LabelProperty = DocumentDisplayPropertyName; // Document property to display in the cell label

            DoneQuery = Database.ViewNamed("Done").Query.AsLiveQuery;
            DoneQuery.AddObserver(this, (NSString)"rows", NSKeyValueObservingOptions.New, IntPtr.Zero);
        }