コード例 #1
0
ファイル: MessageTemplate.cs プロジェクト: unrealdrake/eChat
        public static StackLayout RenderMessage(Message message,bool fromUser)
        {
            StackLayout baseLayout = MessageInitializer.GatBaseTemplate(MessageInitializer.IsCurrentUser(message.UserModel),fromUser);

            baseLayout.Children.Add(

                new StackLayout
                {
                    BackgroundColor = Color.FromHex(message.UserModel.BgColor),
                    Orientation = StackOrientation.Horizontal,
                    Children =
                    {
                        new StackLayout
                        {
                            Padding = 5,
                            HorizontalOptions = LayoutOptions.FillAndExpand,
                            Children =
                            {
                                new Label
                                {
                                    Text = message.UserModel.UserName,
                                    TextColor = Color.FromHex("E0E0E0"),
                                    FontSize = 14,
                                    HorizontalOptions = LayoutOptions.Center

                                },
                                new Label
                                {
                                    Text = message.Content,
                                    TextColor = Color.White,
                                    FontSize = 18
                                }
                            }
                        },
                        new StackLayout
                        {
                            HorizontalOptions = LayoutOptions.FillAndExpand,
                            Children =
                            {
                                new Image
                                {
                                    Source = ImageSource.FromResource("eChat.Images." + message.UserModel.AvatarPath),
                                    WidthRequest = 60,
                                    HeightRequest = 60,
                                    BackgroundColor = Color.White,
                                    HorizontalOptions = LayoutOptions.End
                                }
                            }
                        }
                    }
                }
            );
            return baseLayout;
        }
コード例 #2
0
ファイル: HubInitializer.cs プロジェクト: unrealdrake/eChat
        public void SendMessage(Message message)
        {
            var serializeMsg = JsonConvert.SerializeObject(message);

            Device.BeginInvokeOnMainThread(() =>
            {
               MessageService.AddMessage(serializeMsg,true,_controls);
            });

            HubProxy.Invoke("Send", serializeMsg);
        }