public async override void ViewDidLoad()
        {
            base.ViewDidLoad();

            View.Apply(Style.Screen);
            EdgesForExtendedLayout = UIRectEdge.None;
            viewModel = await ClientListViewModel.Init(workspace.Id);

            // Set ObservableTableViewController settings
            // ObservableTableViewController is a helper class
            // from Mvvm light package.

            TableView.RowHeight      = 60f;
            TableView.SeparatorStyle = UITableViewCellSeparatorStyle.None;
            CreateCellDelegate       = CreateClientCell;
            BindCellDelegate         = BindCell;
            DataSource = viewModel.ClientDataCollection;

            PropertyChanged += (sender, e) => {
                if (e.PropertyName == SelectedItemPropertyName && ClientSelected != null)

                // TODO: Keep previous version calling
                // a handler. Later it can be changed.
                {
                    ClientSelected.Invoke(SelectedItem);
                }
            };

            NavigationItem.RightBarButtonItem = new UIBarButtonItem(
                "ClientNewClient".Tr(), UIBarButtonItemStyle.Plain, OnNavigationBarAddClicked)
                                                .Apply(Style.NavLabelButton);
        }
 public void AddClient(IClient client)
 {
     lock (_clientList)
     {
         var button = new Button(1, _heightTracker, client.SocketId.ToString());
         Interlocked.Increment(ref _heightTracker);
         _clientList.Add(client.SocketId, new ClientButton(button, client));
         button.Clicked += () => ClientSelected?.Invoke(client);
         Add(button);
     }
 }
Exemplo n.º 3
0
        private void _selectClient(SearchClientsViewModel searchClientsVM)
        {
            ClientEntity selectedClient = null;

            if (SearchClientVMsView.CurrentPosition != -1)
            {
                selectedClient = (SearchClientVMsView.CurrentItem as SearchClientViewModel).ClientEntity;
            }
            else
            {
                selectedClient = _subClientSelected;
            }
            ClientSelected?.Invoke(this, selectedClient);
            ShouldClose = true;
            _pcs.NotifyChange(nameof(ShouldClose));
        }
Exemplo n.º 4
0
        private void _subClientEntitiesView_CurrentChanged(object sender, EventArgs e)
        {
            ClientEntity selectedClientEntity = _subClientEntitiesView.CurrentItem as ClientEntity;

            ClientSelected?.Invoke(null, selectedClientEntity);
        }