예제 #1
0
        public ChatMain()
        {
            InitializeComponent();
            BindingContext = viewModel = new ChatMainViewModel();
            _ = viewModel.ChatServis.ConnectAsync();

            var ChatGrupeStranica = new ChatGrupe(viewModel.ChatServis);

            ChatGrupeStranica.Title = "Aktivni kanali";
            Children.Add(ChatGrupeStranica);

            var ChatMainKanal = new ChatKonverzacija(viewModel.ChatServis, "Main");

            ChatMainKanal.Title = "Main";
            Children.Add(ChatMainKanal);

            viewModel.ChatServis.StiglaPoruka += (sender, args) =>
            {
                Device.BeginInvokeOnMainThread(() =>
                {
                    var stranica         = KreirajStranicu(args.Primatelj);
                    var kontekstStranice = (ChatKonverzacijaViewModel)stranica.BindingContext;
                    kontekstStranice.SendLocalMessage(args);
                    var stranicaKaoChatKonvo = (ChatKonverzacija)stranica;
                    stranicaKaoChatKonvo.SkrolajNaDno();
                });
            };
        }
예제 #2
0
        public Page KreirajStranicu(string NazivPrimatelja)
        {
            var str = PostojiKanalOtvoren(NazivPrimatelja);

            if (str != null)
            {
                return(str);
            }

            var ChatKonvo = new ChatKonverzacija(viewModel.ChatServis, NazivPrimatelja);

            ChatKonvo.Title = NazivPrimatelja;
            Children.Add(ChatKonvo);
            return(ChatKonvo);
        }