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; }
public void SendMessage(Message message) { var serializeMsg = JsonConvert.SerializeObject(message); Device.BeginInvokeOnMainThread(() => { MessageService.AddMessage(serializeMsg,true,_controls); }); HubProxy.Invoke("Send", serializeMsg); }