Monitor: first prototype

This commit is contained in:
Jonathan Jenne 2021-05-26 14:45:14 +02:00
parent 826b1c41ec
commit 402f393e35
7 changed files with 143 additions and 29 deletions

View File

@ -45,6 +45,7 @@
<ItemGroup>
<Reference Include="DevExpress.BonusSkins.v19.2" />
<Reference Include="DevExpress.Data.v19.2" />
<Reference Include="DevExpress.Dialogs.v19.2.Core, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Office.v19.2.Core, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.Printing.v19.2.Core" />
<Reference Include="DevExpress.RichEdit.v19.2.Core, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
@ -52,6 +53,7 @@
<Reference Include="DevExpress.Utils.v19.2" />
<Reference Include="DevExpress.XtraBars.v19.2" />
<Reference Include="DevExpress.Sparkline.v19.2.Core" />
<Reference Include="DevExpress.XtraDialogs.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraEditors.v19.2" />
<Reference Include="DevExpress.XtraGrid.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraLayout.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
@ -72,6 +74,7 @@
<HintPath>..\packages\NLog.4.7.5\lib\net45\NLog.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System.Configuration" />
<Reference Include="System.Core" />
<Reference Include="System.IO.Compression" />
@ -186,6 +189,9 @@
<ItemGroup>
<None Include="Resources\managedatasource.svg" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\export.svg" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.

View File

@ -90,6 +90,16 @@ Namespace My.Resources
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
'''</summary>
Friend ReadOnly Property export() As DevExpress.Utils.Svg.SvgImage
Get
Dim obj As Object = ResourceManager.GetObject("export", resourceCulture)
Return CType(obj,DevExpress.Utils.Svg.SvgImage)
End Get
End Property
'''<summary>
''' Sucht eine lokalisierte Ressource vom Typ DevExpress.Utils.Svg.SvgImage.
'''</summary>

View File

@ -121,16 +121,19 @@
<data name="gettingstarted" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\gettingstarted.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="bo_dashboard" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\bo_dashboard.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="enablesearch" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\enablesearch.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="charttype_line" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\charttype_line.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="managedatasource" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\managedatasource.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="bo_dashboard" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\bo_dashboard.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="charttype_line" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\charttype_line.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
<data name="export" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\export.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value>
</data>
</root>

View File

@ -0,0 +1,18 @@
<?xml version='1.0' encoding='UTF-8'?>
<svg x="0px" y="0px" viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" id="Layer_1" style="enable-background:new 0 0 32 32">
<style type="text/css">
.Black{fill:#727272;}
.Yellow{fill:#FFB115;}
.Blue{fill:#1177D7;}
.Green{fill:#039C23;}
.Red{fill:#D11C1C;}
.White{fill:#FFFFFF;}
.st0{opacity:0.75;}
.st1{opacity:0.5;}
.st2{opacity:0.25;}
</style>
<g id="Export">
<path d="M10,12H6V6h4V12z M22,12v6v9c0,0.6-0.4,1-1,1H1c-0.6,0-1-0.4-1-1V7c0-0.6,0.4-1,1-1h3v8h14v-2H22z M18,18H4 v6h14V18z" class="Black" />
<polygon points="16,10 24,10 24,14 32,8 24,2 24,6 16,6 " class="Green" />
</g>
</svg>

View File

@ -30,8 +30,10 @@ Partial Class frmMonitor
Me.ApplicationMenu1 = New DevExpress.XtraBars.Ribbon.ApplicationMenu(Me.components)
Me.BarButtonItem1 = New DevExpress.XtraBars.BarButtonItem()
Me.buttonSearch = New DevExpress.XtraBars.BarButtonItem()
Me.BarButtonItem2 = New DevExpress.XtraBars.BarButtonItem()
Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
Me.RibbonPage2 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.LayoutControl1 = New DevExpress.XtraLayout.LayoutControl()
@ -74,6 +76,7 @@ Partial Class frmMonitor
Me.XtraTabControl2 = New DevExpress.XtraTab.XtraTabControl()
Me.XtraTabPage3 = New DevExpress.XtraTab.XtraTabPage()
Me.XtraTabPage4 = New DevExpress.XtraTab.XtraTabPage()
Me.XtraSaveFileDialog1 = New DevExpress.XtraEditors.XtraSaveFileDialog(Me.components)
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.ApplicationMenu1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.LayoutControl1, System.ComponentModel.ISupportInitialize).BeginInit()
@ -125,9 +128,9 @@ Partial Class frmMonitor
'
Me.RibbonControl1.ApplicationButtonDropDownControl = Me.ApplicationMenu1
Me.RibbonControl1.ExpandCollapseItem.Id = 0
Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.buttonSearch, Me.BarButtonItem1})
Me.RibbonControl1.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.RibbonControl1.ExpandCollapseItem, Me.RibbonControl1.SearchEditItem, Me.buttonSearch, Me.BarButtonItem1, Me.BarButtonItem2})
Me.RibbonControl1.Location = New System.Drawing.Point(0, 0)
Me.RibbonControl1.MaxItemId = 3
Me.RibbonControl1.MaxItemId = 5
Me.RibbonControl1.Name = "RibbonControl1"
Me.RibbonControl1.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPage1})
Me.RibbonControl1.ShowToolbarCustomizeItem = False
@ -155,9 +158,17 @@ Partial Class frmMonitor
Me.buttonSearch.ImageOptions.SvgImage = Global.DigitalData.GUIs.Monitor.My.Resources.Resources.gettingstarted
Me.buttonSearch.Name = "buttonSearch"
'
'BarButtonItem2
'
Me.BarButtonItem2.Caption = "Export als XLSX"
Me.BarButtonItem2.Enabled = False
Me.BarButtonItem2.Id = 4
Me.BarButtonItem2.ImageOptions.SvgImage = Global.DigitalData.GUIs.Monitor.My.Resources.Resources.export
Me.BarButtonItem2.Name = "BarButtonItem2"
'
'RibbonPage1
'
Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1})
Me.RibbonPage1.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroup2})
Me.RibbonPage1.Name = "RibbonPage1"
Me.RibbonPage1.Text = "Start"
'
@ -167,6 +178,13 @@ Partial Class frmMonitor
Me.RibbonPageGroup1.Name = "RibbonPageGroup1"
Me.RibbonPageGroup1.Text = "Daten"
'
'RibbonPageGroup2
'
Me.RibbonPageGroup2.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far
Me.RibbonPageGroup2.ItemLinks.Add(Me.BarButtonItem2)
Me.RibbonPageGroup2.Name = "RibbonPageGroup2"
Me.RibbonPageGroup2.Text = "Export"
'
'RibbonStatusBar1
'
Me.RibbonStatusBar1.Location = New System.Drawing.Point(0, 749)
@ -375,7 +393,7 @@ Partial Class frmMonitor
Me.GridControl1.MainView = Me.GridView1
Me.GridControl1.MenuManager = Me.RibbonControl1
Me.GridControl1.Name = "GridControl1"
Me.GridControl1.Size = New System.Drawing.Size(0, 0)
Me.GridControl1.Size = New System.Drawing.Size(711, 350)
Me.GridControl1.TabIndex = 0
Me.GridControl1.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridView1})
'
@ -390,7 +408,7 @@ Partial Class frmMonitor
Me.TreeListResults.Location = New System.Drawing.Point(0, 0)
Me.TreeListResults.MenuManager = Me.RibbonControl1
Me.TreeListResults.Name = "TreeListResults"
Me.TreeListResults.Size = New System.Drawing.Size(713, 554)
Me.TreeListResults.Size = New System.Drawing.Size(713, 181)
Me.TreeListResults.TabIndex = 4
'
'SvgImageCollection1
@ -420,7 +438,6 @@ Partial Class frmMonitor
'
'SplitContainerControl3
'
Me.SplitContainerControl3.Collapsed = True
Me.SplitContainerControl3.CollapsePanel = DevExpress.XtraEditors.SplitCollapsePanel.Panel2
Me.SplitContainerControl3.Dock = System.Windows.Forms.DockStyle.Fill
Me.SplitContainerControl3.Horizontal = False
@ -440,7 +457,7 @@ Partial Class frmMonitor
Me.XtraTabControl3.Location = New System.Drawing.Point(0, 0)
Me.XtraTabControl3.Name = "XtraTabControl3"
Me.XtraTabControl3.SelectedTabPage = Me.XtraTabPageSQL1
Me.XtraTabControl3.Size = New System.Drawing.Size(0, 0)
Me.XtraTabControl3.Size = New System.Drawing.Size(713, 373)
Me.XtraTabControl3.TabIndex = 0
Me.XtraTabControl3.TabPages.AddRange(New DevExpress.XtraTab.XtraTabPage() {Me.XtraTabPageSQL1, Me.XtraTabPageSQL2, Me.XtraTabPageSQL3, Me.XtraTabPageSQL4})
'
@ -448,7 +465,7 @@ Partial Class frmMonitor
'
Me.XtraTabPageSQL1.Controls.Add(Me.GridControl2)
Me.XtraTabPageSQL1.Name = "XtraTabPageSQL1"
Me.XtraTabPageSQL1.Size = New System.Drawing.Size(0, 0)
Me.XtraTabPageSQL1.Size = New System.Drawing.Size(711, 350)
Me.XtraTabPageSQL1.Text = "SQL 1"
'
'GridControl2
@ -458,7 +475,7 @@ Partial Class frmMonitor
Me.GridControl2.MainView = Me.GridView2
Me.GridControl2.MenuManager = Me.RibbonControl1
Me.GridControl2.Name = "GridControl2"
Me.GridControl2.Size = New System.Drawing.Size(0, 0)
Me.GridControl2.Size = New System.Drawing.Size(711, 350)
Me.GridControl2.TabIndex = 1
Me.GridControl2.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridView2})
'
@ -471,7 +488,7 @@ Partial Class frmMonitor
'
Me.XtraTabPageSQL2.Controls.Add(Me.GridControl3)
Me.XtraTabPageSQL2.Name = "XtraTabPageSQL2"
Me.XtraTabPageSQL2.Size = New System.Drawing.Size(0, 0)
Me.XtraTabPageSQL2.Size = New System.Drawing.Size(711, 350)
Me.XtraTabPageSQL2.Text = "SQL 2"
'
'GridControl3
@ -481,7 +498,7 @@ Partial Class frmMonitor
Me.GridControl3.MainView = Me.GridView3
Me.GridControl3.MenuManager = Me.RibbonControl1
Me.GridControl3.Name = "GridControl3"
Me.GridControl3.Size = New System.Drawing.Size(0, 0)
Me.GridControl3.Size = New System.Drawing.Size(711, 350)
Me.GridControl3.TabIndex = 1
Me.GridControl3.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridView3})
'
@ -494,7 +511,7 @@ Partial Class frmMonitor
'
Me.XtraTabPageSQL3.Controls.Add(Me.GridControl4)
Me.XtraTabPageSQL3.Name = "XtraTabPageSQL3"
Me.XtraTabPageSQL3.Size = New System.Drawing.Size(0, 0)
Me.XtraTabPageSQL3.Size = New System.Drawing.Size(711, 350)
Me.XtraTabPageSQL3.Text = "SQL 3"
'
'GridControl4
@ -504,7 +521,7 @@ Partial Class frmMonitor
Me.GridControl4.MainView = Me.GridView4
Me.GridControl4.MenuManager = Me.RibbonControl1
Me.GridControl4.Name = "GridControl4"
Me.GridControl4.Size = New System.Drawing.Size(0, 0)
Me.GridControl4.Size = New System.Drawing.Size(711, 350)
Me.GridControl4.TabIndex = 1
Me.GridControl4.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.GridView4})
'
@ -517,7 +534,7 @@ Partial Class frmMonitor
'
Me.XtraTabPageSQL4.Controls.Add(Me.GridControl1)
Me.XtraTabPageSQL4.Name = "XtraTabPageSQL4"
Me.XtraTabPageSQL4.Size = New System.Drawing.Size(0, 0)
Me.XtraTabPageSQL4.Size = New System.Drawing.Size(711, 350)
Me.XtraTabPageSQL4.Text = "SQL 4"
'
'SplitContainerControl2
@ -561,6 +578,10 @@ Partial Class frmMonitor
Me.XtraTabPage4.Size = New System.Drawing.Size(1377, 564)
Me.XtraTabPage4.Text = "Auswertungen"
'
'XtraSaveFileDialog1
'
Me.XtraSaveFileDialog1.FileName = "XtraSaveFileDialog1"
'
'frmMonitor
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
@ -672,4 +693,7 @@ Partial Class frmMonitor
Friend WithEvents SvgImageCollection1 As DevExpress.Utils.SvgImageCollection
Friend WithEvents ApplicationMenu1 As DevExpress.XtraBars.Ribbon.ApplicationMenu
Friend WithEvents BarButtonItem1 As DevExpress.XtraBars.BarButtonItem
Friend WithEvents BarButtonItem2 As DevExpress.XtraBars.BarButtonItem
Friend WithEvents RibbonPageGroup2 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents XtraSaveFileDialog1 As DevExpress.XtraEditors.XtraSaveFileDialog
End Class

View File

@ -123,4 +123,7 @@
<metadata name="SvgImageCollection1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="XtraSaveFileDialog1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>335, 17</value>
</metadata>
</root>

View File

@ -38,6 +38,7 @@ Public Class frmMonitor
Private SQLResultGrids As List(Of GridControl)
Private SQLResultTabs As List(Of XtraTabPage)
Private ActiveSQLResultGrid As GridControl
Private FileResultViewers As List(Of DocumentViewer)
Private FileResultTabs As List(Of XtraTabPage)
@ -108,6 +109,19 @@ Public Class frmMonitor
Dim oLicense = LoadGDPicture()
For Each oGrid In SQLResultGrids
AddHandler oGrid.Enter, Sub()
ActiveSQLResultGrid = oGrid
BarButtonItem2.Enabled = True
End Sub
AddHandler oGrid.Leave, Sub()
ActiveSQLResultGrid = Nothing
BarButtonItem2.Enabled = False
End Sub
Next
For Each oViewer As DocumentViewer In FileResultViewers
oViewer.Init(LogConfig, oLicense)
Next
@ -284,7 +298,11 @@ Public Class frmMonitor
For Each oSQLCommand As KeyValuePair(Of String, String) In oSQLCommands
Try
Dim oTable As DataTable = Database.GetDatatable(oSQLCommand.Value)
Dim oExtracted = ExtractTitle(oSQLCommand.Value)
Dim oCommand = oExtracted.Item1
Dim oTitle = oExtracted.Item2
Dim oTable As DataTable = Database.GetDatatable(oCommand)
If oTable Is Nothing Then
Continue For
@ -293,7 +311,7 @@ Public Class frmMonitor
Dim oGridIndex = Integer.Parse(oSQLCommand.Key.Last()) - 1
Dim oGridControl As GridControl = SQLResultGrids.Item(oGridIndex)
FillResultGrid(oGridControl, oTable)
FillResultGrid(oGridControl, oTable, oTitle)
Catch ex As Exception
Logger.Error(ex)
Continue For
@ -302,7 +320,9 @@ Public Class frmMonitor
For Each oFile As KeyValuePair(Of String, String) In oFilePaths
Try
Dim oPath = oFile.Value
Dim oExtracted = ExtractTitle(oFile.Value)
Dim oPath = oExtracted.Item1
Dim oTitle = oExtracted.Item2
If oPath Is Nothing Then
Continue For
@ -315,7 +335,7 @@ Public Class frmMonitor
Dim oViewerIndex = Integer.Parse(oFile.Key.Last()) - 1
Dim oViewer As DocumentViewer = FileResultViewers.Item(oViewerIndex)
FillResultViewer(oViewer, oPath)
FillResultViewer(oViewer, oPath, oTitle)
Catch ex As Exception
Logger.Error(ex)
Continue For
@ -324,7 +344,9 @@ Public Class frmMonitor
For Each oFile As KeyValuePair(Of String, String) In oHtmlDocuments
Try
Dim oHtml = oFile.Value
Dim oExtracted = ExtractTitle(oFile.Value)
Dim oHtml = oExtracted.Item1
Dim oTitle = oExtracted.Item2
If oHtml Is Nothing Then
Continue For
@ -333,7 +355,7 @@ Public Class frmMonitor
Dim oViewerIndex = Integer.Parse(oFile.Key.Last()) - 1
Dim oViewer As RichEditControl = HtmlResultViewers.Item(oViewerIndex)
FillResultHtmlViewer(oViewer, oHtml)
FillResultHtmlViewer(oViewer, oHtml, oTitle)
Catch ex As Exception
Logger.Error(ex)
Continue For
@ -341,6 +363,18 @@ Public Class frmMonitor
Next
End Sub
Private Function ExtractTitle(Value As String) As Tuple(Of String, String)
If Value.Contains("|"c) Then
Dim oSplit = Value.Split("|"c).ToList
Dim oValue = oSplit.First()
Dim oTitle = oSplit.Item(1)
Return New Tuple(Of String, String)(oValue, oTitle)
End If
Return New Tuple(Of String, String)(Value, Nothing)
End Function
Private Sub ExpandNodes(RootNode As TreeListNode, Condition As Predicate(Of TreeListNode))
For Each oNode As TreeListNode In RootNode.Nodes
ExpandNodes(oNode, Condition)
@ -359,27 +393,33 @@ Public Class frmMonitor
End If
End Sub
Private Sub FillResultHtmlViewer(RichEditControl As RichEditControl, Html As String)
Private Sub FillResultHtmlViewer(RichEditControl As RichEditControl, Html As String, Title As String)
RichEditControl.HtmlText = Html
Dim oTabPage = DirectCast(RichEditControl.Parent, XtraTabPage)
oTabPage.PageVisible = True
oTabPage.Text = NotNull(Title, oTabPage.Text)
XtraTabControl1.SelectedTabPage = oTabPage
End Sub
Private Sub FillResultViewer(DocumentViewer As DocumentViewer, Path As String)
Private Sub FillResultViewer(DocumentViewer As DocumentViewer, Path As String, Title As String)
DocumentViewer.LoadFile(Path)
Dim oTabPage = DirectCast(DocumentViewer.Parent, XtraTabPage)
oTabPage.PageVisible = True
oTabPage.Text = NotNull(Title, oTabPage.Text)
XtraTabControl1.SelectedTabPage = oTabPage
End Sub
Private Sub FillResultGrid(GridControl As GridControl, Table As DataTable)
Private Sub FillResultGrid(GridControl As GridControl, Table As DataTable, Title As String)
GridControl.DataSource = Table
Dim oTabPage = DirectCast(GridControl.Parent, XtraTabPage)
oTabPage.PageVisible = True
oTabPage.Text = NotNull(Title, oTabPage.Text)
XtraTabControl3.SelectedTabPage = oTabPage
End Sub
@ -485,6 +525,16 @@ Public Class frmMonitor
LoadSearchKeys()
End If
End Sub
Private Sub BarButtonItem2_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem2.ItemClick
If ActiveSQLResultGrid IsNot Nothing Then
XtraSaveFileDialog1.Filter = "Excel Files (*.xlsx)|*.xlsx"
If XtraSaveFileDialog1.ShowDialog() = DialogResult.OK Then
ActiveSQLResultGrid.ExportToXlsx(XtraSaveFileDialog1.FileName)
End If
End If
End Sub
End Class
Friend Class SearchKey