📄 fieldsexplorer.cs
字号:
cn.SortDirection,
af.DataType);
} else {
sc = new SortColumn (cn.Text,
cn.SortDirection,
typeof(System.String));
}
this.reportModel.ReportSettings.SortColumnCollection.Add(sc);
}
}
}
private void UpdateGrouping () {
this.reportModel.ReportSettings.GroupColumnsCollection.Clear();
if (this.nodeGrouping.Nodes.Count > 0) {
GroupColumn gc;
for (int i = 0;i < this.nodeGrouping.Nodes.Count ;i++ ) {
ColumnsTreeNode cn = (ColumnsTreeNode)this.nodeGrouping.Nodes[i];
gc = new GroupColumn (cn.Text,i,cn.SortDirection);
this.reportModel.ReportSettings.GroupColumnsCollection.Add(gc);
}
}
}
void SetAvailableFields () {
try {
this.nodeAvailableFields.Nodes.Clear();
int avCount = this.reportModel.ReportSettings.AvailableFieldsCollection.Count;
for (int i = 0;i < avCount ;i++ ) {
AbstractColumn af = this.reportModel.ReportSettings.AvailableFieldsCollection[i];
ColumnsTreeNode n = new ColumnsTreeNode(af.ColumnName);
n.Tag = this.nodeAvailableFields;
//we don't like ContextMenu here
n.ContextmenuAddinTreePath = "";
switch (this.reportModel.ReportSettings.CommandType) {
case CommandType.Text:{
n.ImageIndex = columnIcon;
n.SelectedImageIndex = columnIcon;
break;
}
case CommandType.StoredProcedure: {
n.ImageIndex = storedprocIcon ;
n.SelectedImageIndex = storedprocIcon ;
break;
}
default:{
n.ImageIndex = columnIcon;
n.SelectedImageIndex = columnIcon;
break;
}
}
this.nodeAvailableFields.Nodes.Add(n);
}
} catch (Exception) {
throw;
}
}
void SetSortFields(){
ColumnsTreeNode node;
this.nodeSorting.Nodes.Clear();
foreach (SortColumn sc in this.reportModel.ReportSettings.SortColumnCollection) {
node = new ColumnsTreeNode(sc.ColumnName,sc.SortDirection);
if (node.SortDirection == ListSortDirection.Ascending) {
node.ImageIndex = 4;
node.SelectedImageIndex = 4;
} else {
node.ImageIndex = descendingIcon;
node.SelectedImageIndex = descendingIcon;
}
this.nodeSorting.Nodes.Add(node);
}
}
private void SetGroupFields(){
ColumnsTreeNode node;
this.nodeGrouping.Nodes.Clear();
foreach (GroupColumn gc in this.reportModel.ReportSettings.GroupColumnsCollection) {
node = new ColumnsTreeNode(gc.ColumnName);
if (node.SortDirection == ListSortDirection.Ascending) {
node.ImageIndex = ascendingIcon;
node.SelectedImageIndex = ascendingIcon;
} else {
node.ImageIndex = descendingIcon;
node.SelectedImageIndex = descendingIcon;
}
this.nodeGrouping.Nodes.Add(node);
}
}
void SetParamFields (){
ColumnsTreeNode node;
this.nodeParams.Nodes.Clear();
foreach (SqlParameter par in this.reportModel.ReportSettings.SqlParametersCollection) {
node = new ColumnsTreeNode(par.ParameterName);
node.Tag = par;
node.SelectedImageIndex = columnIcon;
node.ImageIndex = columnIcon;
this.nodeParams.Nodes.Add (node);
}
}
void SetFunctions(){
AbstractFieldsNode node;
this.nodeFunction.Nodes.Clear();
foreach (ReportSection section in this.reportModel.SectionCollection) {
foreach (BaseReportObject item in section.Items) {
BaseFunction func = item as BaseFunction;
if (func != null) {
node = new ColumnsTreeNode (ResourceService.GetString(func.LocalisedName));
node.SelectedImageIndex = functionIcon;
node.ImageIndex = functionIcon;
this.nodeFunction.Nodes.Add(node);
}
}
}
}
private void FillTree () {
this.BeginUpdate();
SetAvailableFields();
SetGroupFields();
SetSortFields();
SetParamFields ();
SetFunctions();
this.EndUpdate();
}
void BuildNodes() {
BeginUpdate();
this.Nodes.Clear();
TreeNode root = new TreeNode(ResourceService.GetString("SharpReport.FieldsExplorer.Title"));
nodeAvailableFields = new SectionTreeNode(ResourceService.GetString("SharpReport.FieldsExplorer.AvailableFields"));
nodeAvailableFields.ImageIndex = folderClosed;
nodeAvailableFields.SelectedImageIndex = folderOpen;
// we don't like a ContextMenu here
nodeAvailableFields.ContextmenuAddinTreePath = "";
root.Nodes.Add(this.nodeAvailableFields);
nodeSorting = new SectionTreeNode (ResourceService.GetString("SharpReport.FieldsExplorer.Sorting"));
nodeSorting.ImageIndex = folderClosed;
nodeSorting.SelectedImageIndex = folderOpen;
root.Nodes.Add(this.nodeSorting);
nodeGrouping = new SectionTreeNode (ResourceService.GetString("SharpReport.FieldsExplorer.Grouping"));
nodeGrouping.ImageIndex = folderClosed;
nodeGrouping.SelectedImageIndex = folderOpen;
root.Nodes.Add(this.nodeGrouping);
nodeFunction = new TreeNode(ResourceService.GetString("SharpReport.FieldsExplorer.Functions"));
nodeFunction.ImageIndex = folderClosed;
nodeFunction.SelectedImageIndex = folderOpen;
root.Nodes.Add(this.nodeFunction);
nodeParams = new TreeNode(ResourceService.GetString("SharpReport.FieldsExplorer.Parameters"));
nodeParams.ImageIndex = folderClosed;
nodeParams.SelectedImageIndex = folderOpen;
root.Nodes.Add(this.nodeParams);
Nodes.Add(root);
this.EndUpdate();
}
private const int folderClosed = 0;
private const int folderOpen = 1;
private const int clearIcon = 2;
private const int ascendingIcon = 4;
private const int descendingIcon = 5;
private const int storedprocIcon = 7;
private const int columnIcon = 8;
private const int functionIcon = 9;
void InitImageList() {
ImageList imageList = new ImageList();
imageList.ColorDepth = ColorDepth.Depth32Bit;
imageList.ImageSize = new System.Drawing.Size(16, 16);
imageList.Images.Add(IconService.GetBitmap("Icons.16x16.ClosedFolderBitmap"));
imageList.Images.Add(IconService.GetBitmap("Icons.16x16.OpenFolderBitmap"));
imageList.Images.Add(new Bitmap(1, 1));
imageList.Images.Add(IconService.GetBitmap("Icons.16x16.SelectionArrow"));
imageList.Images.Add(IconService.GetBitmap("Icons.16x16.SharpReport.Ascending"));
imageList.Images.Add(IconService.GetBitmap("Icons.16x16.SharpReport.Descending"));
//Table's or procedure
imageList.Images.Add(IconService.GetBitmap("Icons.16x16.SharpQuery.Table"));
imageList.Images.Add(IconService.GetBitmap("Icons.16x16.SharpQuery.Procedure"));
//Parameters
imageList.Images.Add(IconService.GetBitmap("Icons.16x16.SharpQuery.Column"));
//Function
imageList.Images.Add(ResourceService.GetIcon("Icons.16x16.SharpReport.Function"));
ImageList = imageList;
}
#endregion
#region ICSharpCode.SharpDevelop.Gui.IPadContent interface implementation
public string Title {
get {
return ResourceService.GetString("SharpReport.FieldsExplorer.Title");
}
}
public string Icon {
get {
return "FileIcons.XmlIcon";
}
}
public string Category {
get {
return String.Empty;
}
set {
}
}
public void RedrawContent() {
}
public string[] Shortcut {
get {
return null;
}
set {
}
}
public System.Windows.Forms.Control Control {
get {
return this.contentPanel;
}
}
// ********* Own events
protected virtual void OnTitleChanged(EventArgs e)
{
if (TitleChanged != null) {
TitleChanged(this, e);
}
}
protected virtual void OnIconChanged(EventArgs e)
{
if (IconChanged != null) {
IconChanged(this, e);
}
}
public event EventHandler TitleChanged;
public event EventHandler IconChanged;
#endregion
public FieldsExplorer() {
WorkbenchSingleton.Workbench.ActiveWorkbenchWindowChanged += OnUpdateExplorerWindow;
LabelEdit = true;
AllowDrop = true;
HideSelection = false;
Dock = DockStyle.Fill;
Scrollable = true;
LabelEdit = false;
this.MouseDown += TreeMouseDown;
this.ItemDrag += TreeViewItemDrag;
this.DragDrop += TreeViewDragDrop;
this.DragOver += TreeViewDragOver;
contentPanel.Controls.Add(this);
this.InitImageList();
BuildNodes();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -