public static Windows.UI.Xaml.Controls.RichTextBlock Control(this Trainer.Domain.Component item, bool isThumbnail = false) { var control = new Windows.UI.Xaml.Controls.RichTextBlock { IsTextSelectionEnabled = true, MinHeight = 40, MinWidth = 400 }; if (isThumbnail) { control.FontSize = ThumbnailFontSize; } foreach (var line in item.Code.Value.Split(Environment.NewLine.ToArray())) { var par = new Xaml.Paragraph { FontStyle = Windows.UI.Text.FontStyle.Italic, TextIndent = 4 }; if (isThumbnail) { par.FontSize = ThumbnailFontSize; } foreach (var inline in GetInlines(line, isThumbnail)) { par.Inlines.Add(inline); } control.Blocks.Add(par); } return(control); }
public static Windows.UI.Xaml.Controls.RichTextBlock Control(this Trainer.Domain.RichTextBlock item, bool isThumbnail = false) { var control = new Windows.UI.Xaml.Controls.RichTextBlock { IsTextSelectionEnabled = true, MinHeight = 40, MinWidth = 400 }; if (isThumbnail) { control.FontSize = ThumbnailFontSize; } if (item.CharacterSpacing > 0) { control.CharacterSpacing = item.CharacterSpacing; } if (item.FontSize > 0 && !isThumbnail) { control.FontSize = item.FontSize; } if (!string.IsNullOrEmpty(item.FontStretch)) { control.FontStretch = Helpers.ParseEnum <Windows.UI.Text.FontStretch>(item.FontStretch); } if (!string.IsNullOrEmpty(item.FontStyle)) { control.FontStyle = Helpers.ParseEnum <Windows.UI.Text.FontStyle>(item.FontStyle); } if (!string.IsNullOrEmpty(item.FontWeight)) { control.FontWeight = Helpers.ParseEnum <Windows.UI.Text.FontWeight>(item.FontWeight); } //if (!string.IsNullOrEmpty(item.Foreground)) control.Foreground = new SolidColorBrush(item.Foreground.GetColor()); if (item.LineHeight > 0) { control.LineHeight = item.LineHeight; } if (!string.IsNullOrEmpty(item.LineStackingStrategy)) { control.LineStackingStrategy = Helpers.ParseEnum <Windows.UI.Xaml.LineStackingStrategy>(item.LineStackingStrategy); } //if (!string.IsNullOrEmpty(item.Margin)) control.Margin = Helpers.GetThickness(item.Margin); if (!string.IsNullOrEmpty(item.TextAlignment)) { control.TextAlignment = Helpers.ParseEnum <Windows.UI.Xaml.TextAlignment>(item.TextAlignment); } if (item.TextIndent > 0) { control.TextIndent = item.TextIndent; } if (!string.IsNullOrEmpty(item.HorizontalAlignment)) { control.HorizontalAlignment = Helpers.ParseEnum <Windows.UI.Xaml.HorizontalAlignment>(item.HorizontalAlignment); } if (!string.IsNullOrEmpty(item.VerticalAlignment)) { control.VerticalAlignment = Helpers.ParseEnum <Windows.UI.Xaml.VerticalAlignment>(item.VerticalAlignment); } if (item.MaxLines > 0) { control.MaxLines = item.MaxLines; } if (item.Opacity > 0.0M) { control.Opacity = (double)item.Opacity; } if (!string.IsNullOrEmpty(item.LineStackingStrategy)) { control.TextWrapping = Helpers.ParseEnum <Windows.UI.Xaml.TextWrapping>(item.TextWrapping); } foreach (var p in item.Paragraph) { control.Blocks.Add(p.Control(isThumbnail)); } return(control); }