Browse Source

Use Inlines in TextBlock to handle <CR> in Text

pull/15/head^2
peterforstmeier 14 years ago
parent
commit
41e29a31a5
  1. 17
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/ExtensionMethodes.cs
  2. 4
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/Printing/PrintHelper.cs
  3. 4
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseItems/BaseSection.cs
  4. 2
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/SimpleExpressionEvaluator/Compilation/Functions/AggregateFunctions/AggregateFunction.cs
  5. 14
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/WPF/FixedDocumentCreator.cs

17
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/ExtensionMethodes.cs

@ -7,19 +7,9 @@ @@ -7,19 +7,9 @@
* To change this template use Tools | Options | Coding | Edit Standard Headers.
*/
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.Text;
using System.Threading;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Media;
using System.Windows.Documents;
using System.Windows.Forms;
using WinForms = System.Windows.Forms;
namespace ICSharpCode.Reports.Core
{
@ -30,7 +20,7 @@ namespace ICSharpCode.Reports.Core @@ -30,7 +20,7 @@ namespace ICSharpCode.Reports.Core
/// <see cref="D:\git_Sharpdevelop_Reporting\src\AddIns\Misc\Reports\ICSharpCode.Reports.Core\Project\WPF\ExtensionMethodes.cs"
internal static class ExtensionMethodes
{
#region Collections
public static void ForEach<T>(this IEnumerable<T> input, Action<T> action)
{
@ -41,6 +31,9 @@ namespace ICSharpCode.Reports.Core @@ -41,6 +31,9 @@ namespace ICSharpCode.Reports.Core
}
}
#endregion
#region system.drawing -> Wpf
public static Point ToWpf(this System.Drawing.Point p)
{
@ -62,7 +55,7 @@ namespace ICSharpCode.Reports.Core @@ -62,7 +55,7 @@ namespace ICSharpCode.Reports.Core
return System.Windows.Media.Color.FromArgb(c.A, c.R, c.G, c.B);
}
#endregion
#region DPI independence
public static Rect TransformToDevice(this Rect rect, Visual visual)

4
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/Printing/PrintHelper.cs

@ -193,7 +193,7 @@ namespace ICSharpCode.Reports.Core.BaseClasses.Printing @@ -193,7 +193,7 @@ namespace ICSharpCode.Reports.Core.BaseClasses.Printing
f.Dispose();
}
/*
public static void Displaychain (ReportItemCollection items)
{
foreach(BaseReportItem i in items)
@ -207,7 +207,7 @@ namespace ICSharpCode.Reports.Core.BaseClasses.Printing @@ -207,7 +207,7 @@ namespace ICSharpCode.Reports.Core.BaseClasses.Printing
}
}
}
*/
public static void ShowLocations (ExporterCollection items)
{

4
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseItems/BaseSection.cs

@ -132,8 +132,8 @@ namespace ICSharpCode.Reports.Core @@ -132,8 +132,8 @@ namespace ICSharpCode.Reports.Core
public virtual bool PageBreakAfter {get;set;}
#endregion
//http://www.switchonthecode.com/tutorials/wpf-tutorial-creating-a-custom-panel-control
// http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/607eba8c-6fa4-414c-82ae-23a527cdc5bf
public Size MeasureOverride (Size availableSize)
{
Size resultSize = new Size(0,0);

2
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/SimpleExpressionEvaluator/Compilation/Functions/AggregateFunctions/AggregateFunction.cs

@ -118,7 +118,7 @@ namespace SimpleExpressionEvaluator.Compilation.Functions.AggregateFunctions @@ -118,7 +118,7 @@ namespace SimpleExpressionEvaluator.Compilation.Functions.AggregateFunctions
if (currentItem != null) {
object s1 = Convert.ToString(currentItem.Value.ToString(),CultureInfo.CurrentCulture);
Console.WriteLine("\tSetup DataSource value = {0}", s1.ToString());
// Console.WriteLine("\tSetup DataSource value = {0}", s1.ToString());
if (IsNumeric(s1)) {
list.Add(Convert.ToDouble(s1,System.Globalization.CultureInfo.CurrentCulture));
} else {

14
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/WPF/FixedDocumentCreator.cs

@ -254,8 +254,20 @@ namespace ICSharpCode.Reports.Core.WPF @@ -254,8 +254,20 @@ namespace ICSharpCode.Reports.Core.WPF
TextBlock CreateTextBlock(ExportText exportText)
{
TextBlock textBlock = new TextBlock();
textBlock.Text = exportText.Text;
SetFont(textBlock, exportText.StyleDecorator);
textBlock.TextWrapping = TextWrapping.Wrap;
string [] inlines = exportText.Text.Split(System.Environment.NewLine.ToCharArray());
for (int i = 0; i < inlines.Length; i++) {
if (inlines[i].Length > 0) {
textBlock.Inlines.Add(new Run(inlines[i]));
textBlock.Inlines.Add(new LineBreak());
}
}
var li = textBlock.Inlines.LastInline;
textBlock.Inlines.Remove(li);
SetDimension(textBlock,exportText.StyleDecorator);
return textBlock;
}

Loading…
Cancel
Save