翻譯|使用教程|編輯:李顯亮|2021-09-10 10:07:23.400|閱讀 409 次
概述:用戶經常需要更改工具欄的外觀或自定義導出菜單,但并不是每個人都知道如何做到這一點。假設我們已經有一個完成的項目。例如,我們可以使用來自 FastReport .NET 演示應用程序的任何報告。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
報表生成器FastReport .NET是適用于.NET Core 3,ASP.NET,MVC和Windows窗體的全功能報告庫。使用FastReport .NET,您可以創建獨立于應用程序的.NET報告。
用戶經常需要更改工具欄的外觀或自定義導出菜單,但并不是每個人都知道如何做到這一點。假設我們已經有一個完成的項目。例如,我們可以使用來自 FastReport .NET 演示應用程序的任何報告。
讓我們為工具欄添加一些顏色。我們需要編寫一段代碼來負責定制:
ToolbarSettings toolbar = new ToolbarSettings()
{
Color = Color.Red,
DropDownMenuColor = Color.IndianRed,
IconColor = IconColors.Left,
Position = Positions.Left,
IconTransparency = IconTransparencyEnum.Low,
};
webReport.Toolbar = toolbar;
現在讓我們運行我們的應用程序,看看結果
讓我們更詳細地看看FastReport Web for Core中工具欄的定制是如何進行的。
所有的自定義參數都被存儲為一個屬性集合。有幾個選項可以讓你實現對工具欄外觀的改變,但它們都歸結為添加或改變參數。
讓我們從代碼中考慮外觀定制,在這里你可以看到一個集合和屬性的列表。下面是其中的一些。
讓我們假設我們想改變下拉菜單的顏色,并在其中顯示各種出口選項。
要改變下拉菜單的外觀,你只需要在工具欄中寫一些修改。但是要顯示所有的導出數據選項,你需要添加下面這段代碼。
ToolbarSettings toolbar = new ToolbarSettings()
{
Color = Color.Red,
DropDownMenuColor = Color.Red,
DropDownMenuTextColor = Color.White,
IconColor = IconColors.White,
Position = Positions.Right,
FontSettings = new Font("Arial", 14, FontStyle.Bold),
Exports = new ExportMenuSettings()
{
ExportTypes = Exports.All
}
};
model.WebReport.Toolbar = toolbar;
如果我們運行我們的項目,我們會看到下拉菜單已經改變,導出數據的選項明顯增加。
現在我們看到一個帶有導出格式的自定義菜單。
但如果我們只需要某些格式呢?例如,我們只需要PDF,XPS,和CSV。讓我們來實現它吧!
我們需要稍微改變容器中的導出設置。
Exports = new ExportMenuSettings()
{
ExportTypes = Exports.Pdf | Exports.Xps | Exports.Csv
}
讓我們運行我們的應用程序,看看結果。
如果只顯示這些導出選項,那么你就做對了一切。
所以,我們已經描述了如何在FastReport Web for Core中自定義工具欄和編輯帶有導出選項的下拉菜單。除了這些例子之外,你還可以將討論的參數與其他參數結合起來使用。
在Blazor中定制對象的外觀
我們還需要提到Blazor,它包括普通版本的所有功能,但有更高級的功能。
我們將使用下面文章中的項目。Blazor中的報告和PDF文檔。
讓我們來定制工具欄的外觀。
轉到Pages/Index.razor.cs文件。在這里,我們將自定義工具欄,并添加負責在Blazor中進行自定義的部分代碼。
var toolbar = new ToolbarSettings
{
FontSettings = new Font("Verdana,Arial sans-serif", 15),
Color = Color.Red,
DropDownMenuColor = Color.Red,
DropDownMenuTextColor = Color.White,
IconColor = IconColors.White,
Position = Positions.Bottom,
ContentPosition = ContentPositions.Center,
};
想象一下,除了簡單的定制之外,我們還需要增加導出到PS、HPGL、JSON和PDF。
讓我們添加以下代碼來實現這一點。
Exports = new ExportMenuSettings()
{
ExportTypes = Exports.PS | Exports.Hpgl | Exports.Json | Exports.Pdf
}
因此,我們將得到我們需要的出口設置。
目前,Index.razor和Index.razor.cs文件看起來像這樣。
@page "/"
@page "/{ReportName}"
@inject NavigationManager NavManager
<WebReportContainer WebReport="@UserWebReport" >
@code {
[Parameter]
public string ReportName { get; set; }
protected override void OnParametersSet()
{
base.OnParametersSet();
Load();
}
}
using System;
using System.Drawing;
using System.IO;
using FastReport;
using FastReport.Web;
using System.Data;
namespace Blazor.UserDebugApp.Pages
{
public partial class Index
{
private readonly string directory;
private const string DEFAULT_REPORT = "Simple List.frx";
public WebReport UserWebReport { get; set; }
Report Report { get; set; }
DataSet DataSet { get; }
ToolbarSettings Toolbar { get; }
public Index()
{
directory = Path.Combine(
Directory.GetCurrentDirectory(),
Path.Combine("..", "Demos", "Reports"));
DataSet = new DataSet();
DataSet.ReadXml(Path.Combine(directory, "nwind.xml"));
Toolbar = new ToolbarSettings
{
FontSettings = new Font("Verdana,Arial sans-serif", 15),
Color = Color.Red,
DropDownMenuColor = Color.Red,
DropDownMenuTextColor = Color.White,
IconColor = IconColors.White,
Position = Positions.Bottom,
ContentPosition = ContentPositions.Center,
Exports = new ExportMenuSettings()
{
ExportTypes=Exports.PS|Exports.Hpgl|Exports.Json|Exports.Pdf
}
};
}
private void Load()
{
Report = Report.FromFile(
Path.Combine(
directory,
string.IsNullOrEmpty(ReportName) ? DEFAULT_REPORT : ReportName));
Report.RegisterData(DataSet, "NorthWind");
UserWebReport = new WebReport();
UserWebReport.Report = Report;
UserWebReport.Toolbar = Toolbar;
}
}
}
如果您有任何疑問或需求,請隨時加入FastReport技術交流群(702295239),我們很高興為您提供查詢和咨詢。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@ke049m.cn