move clientsuite to GUIs.ClientSuite folder
This commit is contained in:
237
GUIs.ClientSuite/FormUserManager/UserControlAssignment.Designer.vb
generated
Normal file
237
GUIs.ClientSuite/FormUserManager/UserControlAssignment.Designer.vb
generated
Normal file
@@ -0,0 +1,237 @@
|
||||
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()>
|
||||
Partial Class UserControlAssignment
|
||||
Inherits System.Windows.Forms.UserControl
|
||||
|
||||
'UserControl überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen.
|
||||
<System.Diagnostics.DebuggerNonUserCode()>
|
||||
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
|
||||
Try
|
||||
If disposing AndAlso components IsNot Nothing Then
|
||||
components.Dispose()
|
||||
End If
|
||||
Finally
|
||||
MyBase.Dispose(disposing)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
'Wird vom Windows Form-Designer benötigt.
|
||||
Private components As System.ComponentModel.IContainer
|
||||
|
||||
'Hinweis: Die folgende Prozedur ist für den Windows Form-Designer erforderlich.
|
||||
'Das Bearbeiten ist mit dem Windows Form-Designer möglich.
|
||||
'Das Bearbeiten mit dem Code-Editor ist nicht möglich.
|
||||
<System.Diagnostics.DebuggerStepThrough()>
|
||||
Private Sub InitializeComponent()
|
||||
Me.SplitterMain = New DevExpress.XtraEditors.SplitContainerControl()
|
||||
Me.GridNotAssignedToParent = New DevExpress.XtraGrid.GridControl()
|
||||
Me.ViewNotAssignedToParent = New DevExpress.XtraGrid.Views.Grid.GridView()
|
||||
Me.PanelControl2 = New DevExpress.XtraEditors.PanelControl()
|
||||
Me.labelNotAssignedToParent = New System.Windows.Forms.Label()
|
||||
Me.SplitterInner = New DevExpress.XtraEditors.SplitContainerControl()
|
||||
Me.GridParentList = New DevExpress.XtraGrid.GridControl()
|
||||
Me.ViewParentList = New DevExpress.XtraGrid.Views.Grid.GridView()
|
||||
Me.PanelControl1 = New DevExpress.XtraEditors.PanelControl()
|
||||
Me.labelParentList = New System.Windows.Forms.Label()
|
||||
Me.GridAssignedToParent = New DevExpress.XtraGrid.GridControl()
|
||||
Me.ViewAssignedToParent = New DevExpress.XtraGrid.Views.Grid.GridView()
|
||||
Me.PanelControl3 = New DevExpress.XtraEditors.PanelControl()
|
||||
Me.labelAssignedToParent = New System.Windows.Forms.Label()
|
||||
CType(Me.SplitterMain, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.SplitterMain.SuspendLayout()
|
||||
CType(Me.GridNotAssignedToParent, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.ViewNotAssignedToParent, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.PanelControl2, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.PanelControl2.SuspendLayout()
|
||||
CType(Me.SplitterInner, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.SplitterInner.SuspendLayout()
|
||||
CType(Me.GridParentList, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.ViewParentList, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.PanelControl1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.PanelControl1.SuspendLayout()
|
||||
CType(Me.GridAssignedToParent, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.ViewAssignedToParent, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.PanelControl3, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.PanelControl3.SuspendLayout()
|
||||
Me.SuspendLayout()
|
||||
'
|
||||
'SplitterMain
|
||||
'
|
||||
Me.SplitterMain.Dock = System.Windows.Forms.DockStyle.Fill
|
||||
Me.SplitterMain.Location = New System.Drawing.Point(0, 0)
|
||||
Me.SplitterMain.Name = "SplitterMain"
|
||||
Me.SplitterMain.Panel1.Controls.Add(Me.GridNotAssignedToParent)
|
||||
Me.SplitterMain.Panel1.Controls.Add(Me.PanelControl2)
|
||||
Me.SplitterMain.Panel1.Text = "Panel1"
|
||||
Me.SplitterMain.Panel2.Controls.Add(Me.SplitterInner)
|
||||
Me.SplitterMain.Panel2.Text = "Panel2"
|
||||
Me.SplitterMain.Size = New System.Drawing.Size(892, 447)
|
||||
Me.SplitterMain.SplitterPosition = 284
|
||||
Me.SplitterMain.TabIndex = 0
|
||||
Me.SplitterMain.Text = "SplitContainerControl1"
|
||||
'
|
||||
'GridNotAssignedToParent
|
||||
'
|
||||
Me.GridNotAssignedToParent.AllowDrop = True
|
||||
Me.GridNotAssignedToParent.Dock = System.Windows.Forms.DockStyle.Fill
|
||||
Me.GridNotAssignedToParent.Location = New System.Drawing.Point(0, 41)
|
||||
Me.GridNotAssignedToParent.MainView = Me.ViewNotAssignedToParent
|
||||
Me.GridNotAssignedToParent.Name = "GridNotAssignedToParent"
|
||||
Me.GridNotAssignedToParent.Size = New System.Drawing.Size(284, 406)
|
||||
Me.GridNotAssignedToParent.TabIndex = 2
|
||||
Me.GridNotAssignedToParent.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.ViewNotAssignedToParent})
|
||||
'
|
||||
'ViewNotAssignedToParent
|
||||
'
|
||||
Me.ViewNotAssignedToParent.GridControl = Me.GridNotAssignedToParent
|
||||
Me.ViewNotAssignedToParent.Name = "ViewNotAssignedToParent"
|
||||
'
|
||||
'PanelControl2
|
||||
'
|
||||
Me.PanelControl2.Controls.Add(Me.labelNotAssignedToParent)
|
||||
Me.PanelControl2.Dock = System.Windows.Forms.DockStyle.Top
|
||||
Me.PanelControl2.Location = New System.Drawing.Point(0, 0)
|
||||
Me.PanelControl2.Name = "PanelControl2"
|
||||
Me.PanelControl2.Size = New System.Drawing.Size(284, 41)
|
||||
Me.PanelControl2.TabIndex = 1
|
||||
'
|
||||
'labelNotAssignedToParent
|
||||
'
|
||||
Me.labelNotAssignedToParent.BackColor = System.Drawing.Color.Transparent
|
||||
Me.labelNotAssignedToParent.Dock = System.Windows.Forms.DockStyle.Fill
|
||||
Me.labelNotAssignedToParent.Location = New System.Drawing.Point(2, 2)
|
||||
Me.labelNotAssignedToParent.Name = "labelNotAssignedToParent"
|
||||
Me.labelNotAssignedToParent.Size = New System.Drawing.Size(280, 37)
|
||||
Me.labelNotAssignedToParent.TabIndex = 0
|
||||
Me.labelNotAssignedToParent.Text = "Bitte anpassen!"
|
||||
Me.labelNotAssignedToParent.TextAlign = System.Drawing.ContentAlignment.MiddleCenter
|
||||
'
|
||||
'SplitterInner
|
||||
'
|
||||
Me.SplitterInner.Dock = System.Windows.Forms.DockStyle.Fill
|
||||
Me.SplitterInner.Location = New System.Drawing.Point(0, 0)
|
||||
Me.SplitterInner.Name = "SplitterInner"
|
||||
Me.SplitterInner.Panel1.Controls.Add(Me.GridParentList)
|
||||
Me.SplitterInner.Panel1.Controls.Add(Me.PanelControl1)
|
||||
Me.SplitterInner.Panel1.Text = "Panel1"
|
||||
Me.SplitterInner.Panel2.Controls.Add(Me.GridAssignedToParent)
|
||||
Me.SplitterInner.Panel2.Controls.Add(Me.PanelControl3)
|
||||
Me.SplitterInner.Panel2.Text = "Panel2"
|
||||
Me.SplitterInner.Size = New System.Drawing.Size(596, 447)
|
||||
Me.SplitterInner.SplitterPosition = 302
|
||||
Me.SplitterInner.TabIndex = 0
|
||||
Me.SplitterInner.Text = "SplitContainerControl2"
|
||||
'
|
||||
'GridParentList
|
||||
'
|
||||
Me.GridParentList.Dock = System.Windows.Forms.DockStyle.Fill
|
||||
Me.GridParentList.Location = New System.Drawing.Point(0, 41)
|
||||
Me.GridParentList.MainView = Me.ViewParentList
|
||||
Me.GridParentList.Name = "GridParentList"
|
||||
Me.GridParentList.Size = New System.Drawing.Size(302, 406)
|
||||
Me.GridParentList.TabIndex = 1
|
||||
Me.GridParentList.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.ViewParentList})
|
||||
'
|
||||
'ViewParentList
|
||||
'
|
||||
Me.ViewParentList.GridControl = Me.GridParentList
|
||||
Me.ViewParentList.Name = "ViewParentList"
|
||||
'
|
||||
'PanelControl1
|
||||
'
|
||||
Me.PanelControl1.Controls.Add(Me.labelParentList)
|
||||
Me.PanelControl1.Dock = System.Windows.Forms.DockStyle.Top
|
||||
Me.PanelControl1.Location = New System.Drawing.Point(0, 0)
|
||||
Me.PanelControl1.Name = "PanelControl1"
|
||||
Me.PanelControl1.Size = New System.Drawing.Size(302, 41)
|
||||
Me.PanelControl1.TabIndex = 0
|
||||
'
|
||||
'labelParentList
|
||||
'
|
||||
Me.labelParentList.BackColor = System.Drawing.Color.Transparent
|
||||
Me.labelParentList.Dock = System.Windows.Forms.DockStyle.Fill
|
||||
Me.labelParentList.Location = New System.Drawing.Point(2, 2)
|
||||
Me.labelParentList.Name = "labelParentList"
|
||||
Me.labelParentList.Size = New System.Drawing.Size(298, 37)
|
||||
Me.labelParentList.TabIndex = 0
|
||||
Me.labelParentList.Text = "Bitte anpassen!"
|
||||
Me.labelParentList.TextAlign = System.Drawing.ContentAlignment.MiddleCenter
|
||||
'
|
||||
'GridAssignedToParent
|
||||
'
|
||||
Me.GridAssignedToParent.AllowDrop = True
|
||||
Me.GridAssignedToParent.Dock = System.Windows.Forms.DockStyle.Fill
|
||||
Me.GridAssignedToParent.Location = New System.Drawing.Point(0, 41)
|
||||
Me.GridAssignedToParent.MainView = Me.ViewAssignedToParent
|
||||
Me.GridAssignedToParent.Name = "GridAssignedToParent"
|
||||
Me.GridAssignedToParent.Size = New System.Drawing.Size(282, 406)
|
||||
Me.GridAssignedToParent.TabIndex = 2
|
||||
Me.GridAssignedToParent.Tag = "001"
|
||||
Me.GridAssignedToParent.ViewCollection.AddRange(New DevExpress.XtraGrid.Views.Base.BaseView() {Me.ViewAssignedToParent})
|
||||
'
|
||||
'ViewAssignedToParent
|
||||
'
|
||||
Me.ViewAssignedToParent.GridControl = Me.GridAssignedToParent
|
||||
Me.ViewAssignedToParent.Name = "ViewAssignedToParent"
|
||||
'
|
||||
'PanelControl3
|
||||
'
|
||||
Me.PanelControl3.Controls.Add(Me.labelAssignedToParent)
|
||||
Me.PanelControl3.Dock = System.Windows.Forms.DockStyle.Top
|
||||
Me.PanelControl3.Location = New System.Drawing.Point(0, 0)
|
||||
Me.PanelControl3.Name = "PanelControl3"
|
||||
Me.PanelControl3.Size = New System.Drawing.Size(282, 41)
|
||||
Me.PanelControl3.TabIndex = 1
|
||||
'
|
||||
'labelAssignedToParent
|
||||
'
|
||||
Me.labelAssignedToParent.BackColor = System.Drawing.Color.Transparent
|
||||
Me.labelAssignedToParent.Dock = System.Windows.Forms.DockStyle.Fill
|
||||
Me.labelAssignedToParent.Location = New System.Drawing.Point(2, 2)
|
||||
Me.labelAssignedToParent.Name = "labelAssignedToParent"
|
||||
Me.labelAssignedToParent.Size = New System.Drawing.Size(278, 37)
|
||||
Me.labelAssignedToParent.TabIndex = 0
|
||||
Me.labelAssignedToParent.Text = "Bitte anpassen!"
|
||||
Me.labelAssignedToParent.TextAlign = System.Drawing.ContentAlignment.MiddleCenter
|
||||
'
|
||||
'UserControlAssignment
|
||||
'
|
||||
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
||||
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
|
||||
Me.Controls.Add(Me.SplitterMain)
|
||||
Me.Name = "UserControlAssignment"
|
||||
Me.Size = New System.Drawing.Size(892, 447)
|
||||
CType(Me.SplitterMain, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
Me.SplitterMain.ResumeLayout(False)
|
||||
CType(Me.GridNotAssignedToParent, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.ViewNotAssignedToParent, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.PanelControl2, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
Me.PanelControl2.ResumeLayout(False)
|
||||
CType(Me.SplitterInner, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
Me.SplitterInner.ResumeLayout(False)
|
||||
CType(Me.GridParentList, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.ViewParentList, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.PanelControl1, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
Me.PanelControl1.ResumeLayout(False)
|
||||
CType(Me.GridAssignedToParent, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.ViewAssignedToParent, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.PanelControl3, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
Me.PanelControl3.ResumeLayout(False)
|
||||
Me.ResumeLayout(False)
|
||||
|
||||
End Sub
|
||||
|
||||
Friend WithEvents SplitterMain As DevExpress.XtraEditors.SplitContainerControl
|
||||
Friend WithEvents GridNotAssignedToParent As DevExpress.XtraGrid.GridControl
|
||||
Friend WithEvents ViewNotAssignedToParent As DevExpress.XtraGrid.Views.Grid.GridView
|
||||
Friend WithEvents PanelControl2 As DevExpress.XtraEditors.PanelControl
|
||||
Friend WithEvents SplitterInner As DevExpress.XtraEditors.SplitContainerControl
|
||||
Friend WithEvents GridParentList As DevExpress.XtraGrid.GridControl
|
||||
Friend WithEvents ViewParentList As DevExpress.XtraGrid.Views.Grid.GridView
|
||||
Friend WithEvents PanelControl1 As DevExpress.XtraEditors.PanelControl
|
||||
Friend WithEvents GridAssignedToParent As DevExpress.XtraGrid.GridControl
|
||||
Friend WithEvents ViewAssignedToParent As DevExpress.XtraGrid.Views.Grid.GridView
|
||||
Friend WithEvents PanelControl3 As DevExpress.XtraEditors.PanelControl
|
||||
Friend WithEvents labelNotAssignedToParent As Label
|
||||
Friend WithEvents labelParentList As Label
|
||||
Friend WithEvents labelAssignedToParent As Label
|
||||
End Class
|
||||
120
GUIs.ClientSuite/FormUserManager/UserControlAssignment.resx
Normal file
120
GUIs.ClientSuite/FormUserManager/UserControlAssignment.resx
Normal file
@@ -0,0 +1,120 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
||||
205
GUIs.ClientSuite/FormUserManager/UserControlAssignment.vb
Normal file
205
GUIs.ClientSuite/FormUserManager/UserControlAssignment.vb
Normal file
@@ -0,0 +1,205 @@
|
||||
Imports DevExpress.XtraGrid
|
||||
Imports DevExpress.XtraGrid.Views.Base
|
||||
Imports DevExpress.XtraGrid.Views.Grid
|
||||
Imports DigitalData.GUIs.ClientSuite.ClassLayout
|
||||
|
||||
Public Class UserControlAssignment
|
||||
Private _DragDropManager As ClassDragDrop
|
||||
|
||||
Private _ParentIdColumn As String
|
||||
Private _ChildIdColumn As String
|
||||
|
||||
Private _ParentList As DataTable
|
||||
Private _ChildList As DataTable
|
||||
Private _AssignmentList As DataTable
|
||||
|
||||
Private _ParentRecordId As Integer
|
||||
|
||||
Public Property TextParentList As String
|
||||
Public Property TextAssignedToParent As String
|
||||
Public Property TextNotAssignedToParent As String
|
||||
|
||||
Public Event ChildRemoved(ParentId As Integer, ChildId As Integer, RelationRecordId As Integer)
|
||||
Public Event ChildAdded(ParentId As Integer, ChildId As Integer, RelationRecordId As Integer)
|
||||
|
||||
Private Sub UserControlAssignment_Load(sender As Object, e As EventArgs) Handles Me.Load
|
||||
_DragDropManager = New ClassDragDrop()
|
||||
_DragDropManager.AddGridView(ViewAssignedToParent)
|
||||
_DragDropManager.AddGridView(ViewNotAssignedToParent)
|
||||
|
||||
' Load text customizations
|
||||
labelAssignedToParent.Text = TextAssignedToParent
|
||||
labelNotAssignedToParent.Text = TextNotAssignedToParent
|
||||
labelParentList.Text = TextParentList
|
||||
|
||||
' Load grid customizations
|
||||
Dim oGridPatcher = New ClassControlPatcher(Of GridControl)(Me)
|
||||
oGridPatcher.
|
||||
ProcessContainer(AddressOf GridControlDefaults.DefaultGridSettings).
|
||||
ProcessContainer(AddressOf GridControlDefaults.ReadOnlyGridSettings).
|
||||
ProcessControl(AddressOf GridControlDefaults.CheckboxSelectGridSettings, GridNotAssignedToParent).
|
||||
ProcessControl(AddressOf GridControlDefaults.CheckboxSelectGridSettings, GridAssignedToParent)
|
||||
|
||||
' Load view layouts
|
||||
Try
|
||||
Dim ViewParentListPath = GetLayoutPath(GroupName.LayoutUserManager, Name, ViewParentList.Name)
|
||||
Dim ViewAssignedPath = GetLayoutPath(GroupName.LayoutUserManager, Name, ViewAssignedToParent.Name)
|
||||
Dim ViewNotAssignedPath = GetLayoutPath(GroupName.LayoutUserManager, Name, ViewNotAssignedToParent.Name)
|
||||
|
||||
If IO.File.Exists(ViewParentListPath) Then
|
||||
ViewParentList.RestoreLayoutFromXml(ViewParentListPath)
|
||||
End If
|
||||
If IO.File.Exists(ViewAssignedPath) Then
|
||||
ViewAssignedToParent.RestoreLayoutFromXml(ViewAssignedPath)
|
||||
End If
|
||||
If IO.File.Exists(ViewNotAssignedPath) Then
|
||||
ViewNotAssignedToParent.RestoreLayoutFromXml(ViewNotAssignedPath)
|
||||
End If
|
||||
Catch ex As Exception
|
||||
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Private Function MaybeCopyToDataTable(RowCollection As EnumerableRowCollection(Of DataRow)) As DataTable
|
||||
If RowCollection.Count > 0 Then
|
||||
Return RowCollection.CopyToDataTable()
|
||||
Else
|
||||
Return New DataTable()
|
||||
End If
|
||||
End Function
|
||||
|
||||
Public Sub Init(ParentList As DataTable, ChildrenList As DataTable, AssignmentList As DataTable, ParentIdColumn As String, ChildIdColumn As String)
|
||||
_ParentList = ParentList
|
||||
_ChildList = ChildrenList
|
||||
_AssignmentList = AssignmentList
|
||||
|
||||
_ParentIdColumn = ParentIdColumn
|
||||
_ChildIdColumn = ChildIdColumn
|
||||
|
||||
' This will trigger FocusedRowChanged, needs to be last!!
|
||||
GridParentList.DataSource = ParentList
|
||||
End Sub
|
||||
|
||||
Public Sub UpdateData(ParentList As DataTable, ChildrenList As DataTable, AssignmentList As DataTable)
|
||||
_ParentList = ParentList
|
||||
_ChildList = ChildrenList
|
||||
_AssignmentList = AssignmentList
|
||||
|
||||
Dim oFocusedParentRow = ViewParentList.FocusedRowHandle
|
||||
|
||||
ViewParentList.BeginDataUpdate()
|
||||
GridParentList.DataSource = ParentList
|
||||
ViewParentList.EndDataUpdate()
|
||||
|
||||
ViewParentList.FocusedRowHandle = oFocusedParentRow
|
||||
End Sub
|
||||
|
||||
Private Function GetIdsFromDataRows(Rows As List(Of DataRow)) As List(Of Integer)
|
||||
Dim oIds As New List(Of Integer)
|
||||
|
||||
For Each oRow As DataRow In Rows
|
||||
oIds.Add(oRow.Item(ClassConstants.ATTRIBUTE_ID_COLUMN))
|
||||
Next
|
||||
|
||||
Return oIds
|
||||
End Function
|
||||
|
||||
Private Function GetModifiedRows(Grid As GridControl, Data As IDataObject) As List(Of DataRow)
|
||||
Dim oTable As DataTable = Grid.DataSource
|
||||
Dim oModifiedRows As New List(Of DataRow)
|
||||
Dim oPrimaryKeys As New List(Of Integer)
|
||||
|
||||
For Each oRow As DataRow In oTable.Rows
|
||||
oPrimaryKeys.Add(oRow.Item(ClassConstants.ATTRIBUTE_ID_COLUMN))
|
||||
Next
|
||||
|
||||
If Data.GetDataPresent(GetType(GridView)) Then
|
||||
Dim oView As GridView = Data.GetData(GetType(GridView))
|
||||
Dim oSelectedRows() As Integer = oView.GetSelectedRows()
|
||||
|
||||
If oSelectedRows.Length = 0 Then
|
||||
Return oModifiedRows
|
||||
End If
|
||||
|
||||
' Die ausgewählten Rows auslesen und gridUsersAssigned hinzufügen
|
||||
For Each oRowIndex As Integer In oView.GetSelectedRows()
|
||||
Dim oRowView As DataRowView = oView.GetRow(oRowIndex)
|
||||
Dim oRow As DataRow = oRowView.Row
|
||||
|
||||
If Not oPrimaryKeys.Contains(oRow.Item(ClassConstants.ATTRIBUTE_ID_COLUMN)) Then
|
||||
oModifiedRows.Add(oRow)
|
||||
End If
|
||||
Next
|
||||
|
||||
ElseIf Data.GetDataPresent(GetType(DataRow)) Then
|
||||
Dim oRow As DataRow = Data.GetData(GetType(DataRow))
|
||||
|
||||
If Not oPrimaryKeys.Contains(oRow.Item(ClassConstants.ATTRIBUTE_ID_COLUMN)) Then
|
||||
oModifiedRows.Add(oRow)
|
||||
End If
|
||||
End If
|
||||
|
||||
Return oModifiedRows
|
||||
End Function
|
||||
|
||||
Private Function GetAssignmentRecord(ParentId As Integer, ChildId As Integer)
|
||||
Dim oRows = _AssignmentList.Select($"{_ParentIdColumn} = {ParentId} And {_ChildIdColumn} = {ChildId}").ToList()
|
||||
|
||||
If oRows.Count = 0 Then
|
||||
Return Nothing
|
||||
Else
|
||||
Return oRows.First().Item(ClassConstants.ATTRIBUTE_ID_COLUMN)
|
||||
End If
|
||||
End Function
|
||||
|
||||
Private Sub GridNotAssignedToParent_DragDrop(sender As Object, e As DragEventArgs) Handles GridNotAssignedToParent.DragDrop
|
||||
Dim oGrid As GridControl = sender
|
||||
Dim oChildIds = GetIdsFromDataRows(GetModifiedRows(oGrid, e.Data))
|
||||
|
||||
For Each oChildId In oChildIds
|
||||
Dim oRelationRecordId = GetAssignmentRecord(_ParentRecordId, oChildId)
|
||||
|
||||
RaiseEvent ChildRemoved(_ParentRecordId, oChildId, oRelationRecordId)
|
||||
Next
|
||||
End Sub
|
||||
|
||||
Private Sub GridAssignedToParent_DragDrop(sender As Object, e As DragEventArgs) Handles GridAssignedToParent.DragDrop
|
||||
Dim oGrid As GridControl = sender
|
||||
Dim oChildIds = GetIdsFromDataRows(GetModifiedRows(oGrid, e.Data))
|
||||
|
||||
For Each oChildId In oChildIds
|
||||
Dim oRelationRecordId = GetAssignmentRecord(_ParentRecordId, oChildId)
|
||||
|
||||
RaiseEvent ChildAdded(_ParentRecordId, oChildId, oRelationRecordId)
|
||||
Next
|
||||
End Sub
|
||||
|
||||
Private Sub ViewParentList_FocusedRowObjectChanged(sender As Object, e As FocusedRowObjectChangedEventArgs) Handles ViewParentList.FocusedRowObjectChanged
|
||||
Dim oRowHandle = e.FocusedRowHandle
|
||||
_ParentRecordId = ViewParentList.GetRowCellValue(oRowHandle, ClassConstants.ATTRIBUTE_ID_COLUMN)
|
||||
|
||||
Dim oAssignedChildIds = From oRow In _AssignmentList.AsEnumerable()
|
||||
Where oRow.Item(_ParentIdColumn) = _ParentRecordId
|
||||
Select oRow.Item(_ChildIdColumn)
|
||||
|
||||
If _ChildList Is Nothing Then
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
|
||||
Dim oAssignedChildren As EnumerableRowCollection(Of DataRow) = From oRow In _ChildList.AsEnumerable()
|
||||
Where oAssignedChildIds.Contains(oRow.Item(ClassConstants.ATTRIBUTE_ID_COLUMN))
|
||||
|
||||
Dim oNotAssignedChildren As EnumerableRowCollection(Of DataRow) = From oRow In _ChildList.AsEnumerable()
|
||||
Where Not oAssignedChildIds.Contains(oRow.Item(ClassConstants.ATTRIBUTE_ID_COLUMN)) And oRow.Item(ClassConstants.ATTRIBUTE_ID_COLUMN) <> _ParentRecordId
|
||||
|
||||
GridAssignedToParent.DataSource = MaybeCopyToDataTable(oAssignedChildren)
|
||||
GridNotAssignedToParent.DataSource = MaybeCopyToDataTable(oNotAssignedChildren)
|
||||
End Sub
|
||||
|
||||
Private Sub View_LayoutChanged(sender As Object, e As EventArgs) Handles ViewNotAssignedToParent.Layout, ViewAssignedToParent.Layout, ViewParentList.Layout
|
||||
Dim oView As BaseView = sender
|
||||
Dim oLayoutPath = GetLayoutPath(GroupName.LayoutUserManager, Name, oView.Name)
|
||||
oView.SaveLayoutToXml(oLayoutPath)
|
||||
End Sub
|
||||
End Class
|
||||
207
GUIs.ClientSuite/FormUserManager/frmUserManager.Designer.vb
generated
Normal file
207
GUIs.ClientSuite/FormUserManager/frmUserManager.Designer.vb
generated
Normal file
@@ -0,0 +1,207 @@
|
||||
Imports DigitalData.GUIs.ClientSuite.Base
|
||||
|
||||
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()>
|
||||
Partial Class frmUserManager
|
||||
Inherits BaseRibbonForm
|
||||
|
||||
'Form overrides dispose to clean up the component list.
|
||||
<System.Diagnostics.DebuggerNonUserCode()>
|
||||
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
|
||||
If disposing AndAlso components IsNot Nothing Then
|
||||
components.Dispose()
|
||||
End If
|
||||
MyBase.Dispose(disposing)
|
||||
End Sub
|
||||
|
||||
'Required by the Windows Form Designer
|
||||
Private components As System.ComponentModel.IContainer
|
||||
|
||||
'NOTE: The following procedure is required by the Windows Form Designer
|
||||
'It can be modified using the Windows Form Designer.
|
||||
'Do not modify it using the code editor.
|
||||
<System.Diagnostics.DebuggerStepThrough()>
|
||||
Private Sub InitializeComponent()
|
||||
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(frmUserManager))
|
||||
Me.UserRibbon = New DevExpress.XtraBars.Ribbon.RibbonControl()
|
||||
Me.BarButtonUserEdit = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.BarButtonGroupEdit = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.BarButtonAssign = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.BarButtonItem1 = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.BarButtonRefresh = New DevExpress.XtraBars.BarButtonItem()
|
||||
Me.RibbonPageCategoryUserManager = New DevExpress.XtraBars.Ribbon.RibbonPageCategory()
|
||||
Me.RibbonPageUserManager = New DevExpress.XtraBars.Ribbon.RibbonPage()
|
||||
Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
|
||||
Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
|
||||
Me.RibbonPageGroup3 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
|
||||
Me.RibbonStatusBar = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
|
||||
Me.UserNavbar = New DevExpress.XtraBars.Navigation.OfficeNavigationBar()
|
||||
Me.NavbarUser2Group = New DevExpress.XtraBars.Navigation.NavigationBarItem()
|
||||
Me.NavbarGroup2Group = New DevExpress.XtraBars.Navigation.NavigationBarItem()
|
||||
Me.ContentPanel = New DevExpress.XtraEditors.PanelControl()
|
||||
CType(Me.UserRibbon, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.UserNavbar, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.ContentPanel, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.SuspendLayout()
|
||||
'
|
||||
'UserRibbon
|
||||
'
|
||||
Me.UserRibbon.ExpandCollapseItem.Id = 0
|
||||
Me.UserRibbon.Items.AddRange(New DevExpress.XtraBars.BarItem() {Me.UserRibbon.ExpandCollapseItem, Me.BarButtonUserEdit, Me.BarButtonGroupEdit, Me.BarButtonAssign, Me.BarButtonItem1, Me.BarButtonRefresh})
|
||||
Me.UserRibbon.Location = New System.Drawing.Point(0, 0)
|
||||
Me.UserRibbon.MaxItemId = 10
|
||||
Me.UserRibbon.MdiMergeStyle = DevExpress.XtraBars.Ribbon.RibbonMdiMergeStyle.Always
|
||||
Me.UserRibbon.Name = "UserRibbon"
|
||||
Me.UserRibbon.PageCategories.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageCategory() {Me.RibbonPageCategoryUserManager})
|
||||
Me.UserRibbon.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.[False]
|
||||
Me.UserRibbon.Size = New System.Drawing.Size(1070, 146)
|
||||
Me.UserRibbon.StatusBar = Me.RibbonStatusBar
|
||||
'
|
||||
'BarButtonUserEdit
|
||||
'
|
||||
Me.BarButtonUserEdit.Caption = "Benutzer Verwaltung"
|
||||
Me.BarButtonUserEdit.Id = 1
|
||||
Me.BarButtonUserEdit.ImageOptions.Image = CType(resources.GetObject("BarButtonUserEdit.ImageOptions.Image"), System.Drawing.Image)
|
||||
Me.BarButtonUserEdit.ImageOptions.LargeImage = CType(resources.GetObject("BarButtonUserEdit.ImageOptions.LargeImage"), System.Drawing.Image)
|
||||
Me.BarButtonUserEdit.Name = "BarButtonUserEdit"
|
||||
'
|
||||
'BarButtonGroupEdit
|
||||
'
|
||||
Me.BarButtonGroupEdit.Caption = "Gruppen Verwaltung"
|
||||
Me.BarButtonGroupEdit.Id = 2
|
||||
Me.BarButtonGroupEdit.ImageOptions.Image = CType(resources.GetObject("BarButtonGroupEdit.ImageOptions.Image"), System.Drawing.Image)
|
||||
Me.BarButtonGroupEdit.ImageOptions.LargeImage = CType(resources.GetObject("BarButtonGroupEdit.ImageOptions.LargeImage"), System.Drawing.Image)
|
||||
Me.BarButtonGroupEdit.Name = "BarButtonGroupEdit"
|
||||
'
|
||||
'BarButtonAssign
|
||||
'
|
||||
Me.BarButtonAssign.Caption = "Zuordnen"
|
||||
Me.BarButtonAssign.Id = 6
|
||||
Me.BarButtonAssign.ImageOptions.Image = CType(resources.GetObject("BarButtonAssign.ImageOptions.Image"), System.Drawing.Image)
|
||||
Me.BarButtonAssign.ImageOptions.LargeImage = CType(resources.GetObject("BarButtonAssign.ImageOptions.LargeImage"), System.Drawing.Image)
|
||||
Me.BarButtonAssign.Name = "BarButtonAssign"
|
||||
'
|
||||
'BarButtonItem1
|
||||
'
|
||||
Me.BarButtonItem1.Caption = "Zuordnung aufheben"
|
||||
Me.BarButtonItem1.Id = 7
|
||||
Me.BarButtonItem1.ImageOptions.Image = CType(resources.GetObject("BarButtonItem1.ImageOptions.Image"), System.Drawing.Image)
|
||||
Me.BarButtonItem1.ImageOptions.LargeImage = CType(resources.GetObject("BarButtonItem1.ImageOptions.LargeImage"), System.Drawing.Image)
|
||||
Me.BarButtonItem1.Name = "BarButtonItem1"
|
||||
'
|
||||
'BarButtonRefresh
|
||||
'
|
||||
Me.BarButtonRefresh.Caption = "Neu Laden"
|
||||
Me.BarButtonRefresh.Id = 8
|
||||
Me.BarButtonRefresh.ImageOptions.Image = CType(resources.GetObject("BarButtonRefresh.ImageOptions.Image"), System.Drawing.Image)
|
||||
Me.BarButtonRefresh.ImageOptions.LargeImage = CType(resources.GetObject("BarButtonRefresh.ImageOptions.LargeImage"), System.Drawing.Image)
|
||||
Me.BarButtonRefresh.Name = "BarButtonRefresh"
|
||||
'
|
||||
'RibbonPageCategoryUserManager
|
||||
'
|
||||
Me.RibbonPageCategoryUserManager.Name = "RibbonPageCategoryUserManager"
|
||||
Me.RibbonPageCategoryUserManager.Pages.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPage() {Me.RibbonPageUserManager})
|
||||
Me.RibbonPageCategoryUserManager.Text = "User Manager"
|
||||
'
|
||||
'RibbonPageUserManager
|
||||
'
|
||||
Me.RibbonPageUserManager.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup1, Me.RibbonPageGroup2, Me.RibbonPageGroup3})
|
||||
Me.RibbonPageUserManager.Name = "RibbonPageUserManager"
|
||||
Me.RibbonPageUserManager.Text = "Allgemein"
|
||||
'
|
||||
'RibbonPageGroup1
|
||||
'
|
||||
Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonUserEdit)
|
||||
Me.RibbonPageGroup1.ItemLinks.Add(Me.BarButtonGroupEdit)
|
||||
Me.RibbonPageGroup1.Name = "RibbonPageGroup1"
|
||||
Me.RibbonPageGroup1.Text = "Sprungmarken"
|
||||
'
|
||||
'RibbonPageGroup2
|
||||
'
|
||||
Me.RibbonPageGroup2.ItemLinks.Add(Me.BarButtonAssign)
|
||||
Me.RibbonPageGroup2.ItemLinks.Add(Me.BarButtonItem1)
|
||||
Me.RibbonPageGroup2.Name = "RibbonPageGroup2"
|
||||
Me.RibbonPageGroup2.Text = "Zuordnung"
|
||||
'
|
||||
'RibbonPageGroup3
|
||||
'
|
||||
Me.RibbonPageGroup3.ItemLinks.Add(Me.BarButtonRefresh)
|
||||
Me.RibbonPageGroup3.Name = "RibbonPageGroup3"
|
||||
Me.RibbonPageGroup3.Text = "Daten"
|
||||
'
|
||||
'RibbonStatusBar
|
||||
'
|
||||
Me.RibbonStatusBar.HideWhenMerging = DevExpress.Utils.DefaultBoolean.[True]
|
||||
Me.RibbonStatusBar.Location = New System.Drawing.Point(0, 519)
|
||||
Me.RibbonStatusBar.Name = "RibbonStatusBar"
|
||||
Me.RibbonStatusBar.Ribbon = Me.UserRibbon
|
||||
Me.RibbonStatusBar.Size = New System.Drawing.Size(1070, 21)
|
||||
'
|
||||
'UserNavbar
|
||||
'
|
||||
Me.UserNavbar.Dock = System.Windows.Forms.DockStyle.Bottom
|
||||
Me.UserNavbar.Items.AddRange(New DevExpress.XtraBars.Navigation.NavigationBarItem() {Me.NavbarUser2Group, Me.NavbarGroup2Group})
|
||||
Me.UserNavbar.Location = New System.Drawing.Point(0, 474)
|
||||
Me.UserNavbar.Name = "UserNavbar"
|
||||
Me.UserNavbar.Size = New System.Drawing.Size(1070, 45)
|
||||
Me.UserNavbar.TabIndex = 2
|
||||
Me.UserNavbar.Text = "OfficeNavigationBar1"
|
||||
'
|
||||
'NavbarUser2Group
|
||||
'
|
||||
Me.NavbarUser2Group.Name = "NavbarUser2Group"
|
||||
Me.NavbarUser2Group.Text = "Userzuordnung"
|
||||
'
|
||||
'NavbarGroup2Group
|
||||
'
|
||||
Me.NavbarGroup2Group.Name = "NavbarGroup2Group"
|
||||
Me.NavbarGroup2Group.ShowPeekFormOnItemHover = DevExpress.Utils.DefaultBoolean.[True]
|
||||
Me.NavbarGroup2Group.Text = "Gruppenzuordnung"
|
||||
'
|
||||
'ContentPanel
|
||||
'
|
||||
Me.ContentPanel.Dock = System.Windows.Forms.DockStyle.Fill
|
||||
Me.ContentPanel.Location = New System.Drawing.Point(0, 146)
|
||||
Me.ContentPanel.Name = "ContentPanel"
|
||||
Me.ContentPanel.Size = New System.Drawing.Size(1070, 328)
|
||||
Me.ContentPanel.TabIndex = 8
|
||||
'
|
||||
'frmUserManager
|
||||
'
|
||||
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
||||
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
|
||||
Me.ClientSize = New System.Drawing.Size(1070, 540)
|
||||
Me.Controls.Add(Me.ContentPanel)
|
||||
Me.Controls.Add(Me.UserNavbar)
|
||||
Me.Controls.Add(Me.RibbonStatusBar)
|
||||
Me.Controls.Add(Me.UserRibbon)
|
||||
Me.DefaultRibbonPage = Me.RibbonPageUserManager
|
||||
Me.Name = "frmUserManager"
|
||||
Me.Ribbon = Me.UserRibbon
|
||||
Me.ShowIcon = False
|
||||
Me.StatusBar = Me.RibbonStatusBar
|
||||
Me.Text = "User Manager"
|
||||
CType(Me.UserRibbon, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.UserNavbar, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
CType(Me.ContentPanel, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
Me.ResumeLayout(False)
|
||||
Me.PerformLayout()
|
||||
|
||||
End Sub
|
||||
|
||||
Friend WithEvents UserRibbon As DevExpress.XtraBars.Ribbon.RibbonControl
|
||||
Friend WithEvents RibbonPageUserManager As DevExpress.XtraBars.Ribbon.RibbonPage
|
||||
Friend WithEvents RibbonPageGroup1 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
|
||||
Friend WithEvents RibbonStatusBar As DevExpress.XtraBars.Ribbon.RibbonStatusBar
|
||||
Friend WithEvents BarButtonUserEdit As DevExpress.XtraBars.BarButtonItem
|
||||
Friend WithEvents BarButtonGroupEdit As DevExpress.XtraBars.BarButtonItem
|
||||
Friend WithEvents RibbonPageCategoryUserManager As DevExpress.XtraBars.Ribbon.RibbonPageCategory
|
||||
Friend WithEvents BarButtonAssign As DevExpress.XtraBars.BarButtonItem
|
||||
Friend WithEvents BarButtonItem1 As DevExpress.XtraBars.BarButtonItem
|
||||
Friend WithEvents RibbonPageGroup2 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
|
||||
Friend WithEvents BarButtonRefresh As DevExpress.XtraBars.BarButtonItem
|
||||
Friend WithEvents RibbonPageGroup3 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
|
||||
Friend WithEvents UserNavbar As DevExpress.XtraBars.Navigation.OfficeNavigationBar
|
||||
Friend WithEvents NavbarUser2Group As DevExpress.XtraBars.Navigation.NavigationBarItem
|
||||
Friend WithEvents NavbarGroup2Group As DevExpress.XtraBars.Navigation.NavigationBarItem
|
||||
Friend WithEvents ContentPanel As DevExpress.XtraEditors.PanelControl
|
||||
End Class
|
||||
243
GUIs.ClientSuite/FormUserManager/frmUserManager.resx
Normal file
243
GUIs.ClientSuite/FormUserManager/frmUserManager.resx
Normal file
@@ -0,0 +1,243 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="BarButtonUserEdit.ImageOptions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
|
||||
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAydEVYdFRpdGxlAEN1c3RvbWVyO0VtcGxveWVlO1Bl
|
||||
cnNvbjtDb250YWN0O1VzZXI7Q2xpZW50fhE26AAAAMxJREFUOE+l0TsKwkAUheEUYu8yFGystIr22UN2
|
||||
4RpsrK2tXIErCIKuISvQOhYqMv4HZuIwDJmgxQfJPXMPeWTGmL9Eh+vDbo4T7tYZuc1auo8tD3CFCdww
|
||||
RLJgjHDZmSBZsERsWVZIFmwQWxZlyYIF3giXNdPH7S4QwgphQWWzXgU5nnDLuu73Gx0OlLhYpTfvLiAY
|
||||
YYuhN9P/10xZvIDBDEe8oMfeY2rpWjNlOqOz3wJuCjzg3jlFZwu/oPbCvmq/oAnCPpq24Hcm+wDispls
|
||||
ZjsJhAAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
</data>
|
||||
<data name="BarButtonUserEdit.ImageOptions.LargeImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
|
||||
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAydEVYdFRpdGxlAEN1c3RvbWVyO0VtcGxveWVlO1Bl
|
||||
cnNvbjtDb250YWN0O1VzZXI7Q2xpZW50fhE26AAAAcdJREFUWEfF1r8rxVEYx3HFYjAoshKLwd2tpCiL
|
||||
8rdIBonl1t39WKxSBjsLKynJoKSIUchAUV/vU9+vnuf0nOd8B/caXsPn3PN8nsNN6SqK4l+psLS3Vcc8
|
||||
9vGIr9ITDrAg++pQgYKcTRQZu7IzRwWGPbOwFloWZa9HBQY94dduLbMcyl6PCgx6bmAts9zKXo8KDHre
|
||||
YS2zvMpejwoMeqxFKZ+y16MCgylTsBZ5pmR3igoMpWzDWuLZlt0pKjCU0oS1xNOU3SkqMJQyimdYiyzh
|
||||
7qjsTlGBIc8qrGWWZdnrUYFBzwSsZZYJ2etRgcGcI1gLpWPZmaMCwzkNfMBaHITPGrIzRwWG65jDC+Ll
|
||||
b5iTfXWoQEFdg1hB+EpOsYYh2VWXCpTkdBtnv8qOHtmZo0JcGJnEBcbEWSz8pVxiUvZ6VBBFlWGs4xrV
|
||||
d32CXsR3+3CO6l6Y2cCI3BFTgcuVfuwg/L9XFUpnmEZPaQZXsO6GjtDVL3dVVOBSMI47WGWx75L1WSx0
|
||||
jst9gQpcGMB9OdAOoXtA7owf0BKX26Uld8YPaOdPX7mXO+MHWAN/Tu6MH/AQX26DB7lTPeA/mIedZB52
|
||||
knnYOUXXD9NKheoC25U6AAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="BarButtonGroupEdit.ImageOptions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
|
||||
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAcdEVYdFRpdGxlAFRlYW07UGVvcGxlO0dyb3VwO1Vz
|
||||
ZXKTe2BJAAAA8klEQVQ4T6XQvw7BUBQG8BKJmPoMHoDN6gEsxq4GTyCiI29hMBgx9jFIvIQY7BKduL6v
|
||||
uac5vU6HxvBL6vz59DRyzv3FLDZRPqwO2xbs4OntoQ1m3QoYgQuwZtatgEQNXGEOHW8GZ5B+YgWkvvmB
|
||||
unPewJnUCojhBReoO4c9zsQ/AT5kCUfQ5wjW2FvqHb3MWwfQBzlHY429IXTKAPzowgZucIcJyDmyXLw2
|
||||
sMcZznKnx4AT6H+iBfAc+c1n1vQMZQzIVeEBa5Bzxl7x2sAeZ2Q+L7+B/w7hOVOv8tp6JwywzglleicM
|
||||
0OfUyfVOJaA5F30Bv8maeRXqkFsAAAAASUVORK5CYII=
|
||||
</value>
|
||||
</data>
|
||||
<data name="BarButtonGroupEdit.ImageOptions.LargeImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
|
||||
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAcdEVYdFRpdGxlAFRlYW07UGVvcGxlO0dyb3VwO1Vz
|
||||
ZXKTe2BJAAACnklEQVRYR8XVz4tPYRTH8cEoP4YaRalZ2UwRIkINxYo0C9mwYYGFYqexkI38BSwsJKTM
|
||||
kKyk1KwoIT83IlZ+syKNRuTr/dE9+jzPPHfmmsXX4lXfc+55zrlz73Of6Wi1Wv9VMdlOSTAweMptxHV8
|
||||
xA98wg1sQl4batf4HJcEFIa1+IlWgfIb4PWN1viskAQUhQsoNQqX4PWN1viskAQUhUfVojqP4fWN1vis
|
||||
kAQUhRfVopLzWAWvl3lYh3P4hXzdS58VkoAiWY66d3kMqtmFW/DNdhu7MQVHkK9Vz6U+T5KAAumvFuRG
|
||||
0IWjlis5jpn4YrnQ7/MkCSiQGXhSLXB3MAtfLVfyDXNx03KinjN8niQBBUGP0hfLNazJcnXWQ/We2+Oz
|
||||
QhJQFPSXfoA3OImtWa6O6k5YrF6zfVZIAorcZnxHNNFff8Di8RzE6uq3emzxOS4JKMzpiziNu1gE7YN8
|
||||
WMk9LMZZjNn5LgkoDp1aaHEYRmlgbjjrq16dngtJQFEP9uMh3mMB/AbUqO6MCLq+LOupc0I91bvHZ0ZR
|
||||
N85Ah4o3e4W90PvcjmnIP6+cDigdRkuwD2/g1zVDs7r/3AA/5uM5vKiOPq9tWS6n631ZrkTH/ULdwJAl
|
||||
J3IVWjNoOXexeqKqK13PDalYR2zpYp0dmI5D0CtS7jUOQ69oZ5VrYkQ3UDqzS55Bw0XvWGtljv2eWj0B
|
||||
7RfVl/q4z393Y7VwIr3Q4x+wnNN/wSvo9b7jSQJr5PQfUI/3KeLOdbpps3mdHr1/oqrXui6fkUsCinPa
|
||||
zfln5O7jMh5YLqf1fT7HJQGFbgX+dYPWUZ+VPiskAUWu6bHbVHI8hySgyI2i1GiyRn1WSAKK3DuUGk3W
|
||||
W58VxiTarZhsp2KynYrJ9ml1/AZUr3hglRjmdgAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
</data>
|
||||
<data name="BarButtonAssign.ImageOptions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
|
||||
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAbdEVYdFRpdGxlAEFkZDtQbHVzO0JhcnM7UmliYm9u
|
||||
O5UGMy8AAABgSURBVDhP3YxRCoAwDEN3QS/lqbxdtNKUTDJEHAh+vNGl6WsAXmFDsqwbkphtx4bkR4Kc
|
||||
bceGRAUjzofFp0wVFPEnWrzk1e0CJfMS6I7ME4w4Sp1Ad8SGhII4/kZwD9oOmV+r+RzWkL4AAAAASUVO
|
||||
RK5CYII=
|
||||
</value>
|
||||
</data>
|
||||
<data name="BarButtonAssign.ImageOptions.LargeImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
|
||||
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAbdEVYdFRpdGxlAEFkZDtQbHVzO0JhcnM7UmliYm9u
|
||||
O5UGMy8AAACPSURBVFhH7c5RCoQwDEVRN+imXJW7i82HIOlFHhKiSD4Owp1p+xYzexXGShgrYayEsRJG
|
||||
xbrtdhV/V2FU9IAe0AP+PSBeniW+46bg6HCG+I6bgqPDGeI7bgqODmeI77gpqJTLFRgVNGB8b13PnzAq
|
||||
xoXfG/AERkUPoAHji/+9g1HRA7JgrISxEsZKGOvYcgB55Y6E3tOuXgAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
</data>
|
||||
<data name="BarButtonItem1.ImageOptions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
|
||||
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAjdEVYdFRpdGxlAENhbmNlbDtTdG9wO0V4aXQ7QmFy
|
||||
cztSaWJib247TJaWsgAAAMJJREFUOE+Nk0sKAjEQRHM4YVZ6CS8gfhBGHK/pSRRXbRWkJOlOq4sHSf0Y
|
||||
BlLMrNy3qzWYef4HZC/s8KzyCxi4+rAHmVvNsrOhcKqCSEfgqSz2Ms7OCCPQfPlIvQ2kIzgPy+QzUIN+
|
||||
ZAFpmXQDBAE/0tKVSXcRCI5GQpkEgSDsP5sso2wQEByVRRjpLgj48gGEH9t2vpYbLx35WRbQhiM0+DBa
|
||||
I5QFPD8yU5zAowppWSCjkSeYJHJk58MZyPIBTmZW3tJAnMwmSptiAAAAAElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="BarButtonItem1.ImageOptions.LargeImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
|
||||
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAjdEVYdFRpdGxlAENhbmNlbDtTdG9wO0V4aXQ7QmFy
|
||||
cztSaWJib247TJaWsgAAAW5JREFUWEfFlk1KBDEUhGfmAg56JTcuHEGP4FFFFMVZz1VcxaomD57pek1e
|
||||
hLj4FilSP9Dd0LtSyr8ixZlIcSZSnIkUL8+3f6LJOvhzixRr0BV4AXf13I3LuQev4OjzPVKEgeUfoIBv
|
||||
kBpRM1hOLzM+gRyxEnDxALiaRiM7wpcbzNy3fb8OBi4+gTagd4Qq5/lBda0EgsvksRrboK0RqXIiRRiM
|
||||
zIh0OZEiTJ6eEUPlRIowtmyNGC4nUoRZEY0YLidSRECEGuFJlRMpImSLaMRSDmRmhBQZsoF65jZgeTFV
|
||||
ZoQUGRIQlRvLCJUZIUWEKKK3XWndI6SIgN5yPvPwE1XZLVKEubfc7gyPkCKMmXJjaIQUYSJR+Qn4Yk96
|
||||
hBRhGCk3UiNWAi7uwVs1+oCeckONeAfdPyTX4Ksas+WW4UecwU3bQ1YCwWXCEVydKicuhyOYIcuJFC0I
|
||||
8P/Qn7tosvK/5TOR4kykOBMpzqPsfgBphQ1j4i+mWAAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
</data>
|
||||
<data name="BarButtonRefresh.ImageOptions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
|
||||
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAndEVYdFRpdGxlAFJlZnJlc2g7UmVwZWF0O0JhcnM7
|
||||
UmliYm9uO1JlbG9hZM1N9ukAAADSSURBVDhPpZKxDcJAEASNRAE0YNGBc4qwyEjIHSJHkNMEJZCSmYx+
|
||||
aOLZff2eTugegQlGOu3e7b9936SU/iIUf8GK/nwXLRjBBJ4F1tTo5b5awAIcQKpwAxsQBqxADxhyAgNY
|
||||
F1g/gELaKGBfGhhiuvM7oJBRukwO6Zo5RA0e6LwJ/UlaNCwsJPCMjyaHj9fLEnX1EH89roriIM3D5uLb
|
||||
MHXfwD3T4I/qpDvfh9jn+QY+Eq5IIe9r3AGF2JwPIHwkConYgtxbCyDznvJcQvF7UvMC/+yHWnrFMzsA
|
||||
AAAASUVORK5CYII=
|
||||
</value>
|
||||
</data>
|
||||
<data name="BarButtonRefresh.ImageOptions.LargeImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
|
||||
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAndEVYdFRpdGxlAFJlZnJlc2g7UmVwZWF0O0JhcnM7
|
||||
UmliYm9uO1JlbG9hZM1N9ukAAAHOSURBVFhHxZY9TsNQEIRTBJp0SBQoFBQg5QTQJSfwVVLSJkJCHAFu
|
||||
4APQcIB01KkoKLgCvZlB3mjfZl7sEPFSfEo8b3Z35L/nQdM0R0WKJZFiSaRYEimWRIo5qoe3CZiDGqzB
|
||||
dwv/U+PaRNXmkGIETcdgCT5A0wE99I5Vr4gUPWh0C15BHNQFa6aqp0eKBhqQC/AJ1JAuVmBnCCkSFJKq
|
||||
/b0CFuIdLMAMnLXwPzWuxRA8E9nLIUWCIg5nAx/iEdwoP+EaeAExxFL5yZZwXz8PUWDDDQtxEv0ReEYg
|
||||
huCNKZ+O5ADDz2GMw43Ke3cBL89EvBxz5U0OYMoNN/YJwXvC19bKt/kDQ9dwo1cI+Hhj+rq18pm573Aj
|
||||
CcHjsN6X6qDiA0P81m8aeLDId7s3z5QvAt/el3GrCYGBG4svWCifAt6uEMmZS4oNmLir+SI+UtkXUATe
|
||||
XIiKj7r3JoUGjNx2487Hl8tI+T3wnAIVgsOH0Z8ceFDALdU3IAzR9Sp+AtfAh0hOu0eKBEX8BlDbcJ/N
|
||||
6Av4EHIGkaKBwinglhpD9IEhLoHsbUjRgwYM8dcPkjvV0yPFCBod75PMg6bH+Sj9T6RYEimWRIolkWI5
|
||||
msEP/+Ty+jngCqIAAAAASUVORK5CYII=
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
||||
153
GUIs.ClientSuite/FormUserManager/frmUserManager.vb
Normal file
153
GUIs.ClientSuite/FormUserManager/frmUserManager.vb
Normal file
@@ -0,0 +1,153 @@
|
||||
Imports DigitalData.Modules.Logging
|
||||
|
||||
Public Class frmUserManager
|
||||
Private _Logger As Logger
|
||||
|
||||
Private _UserTable As DataTable
|
||||
Private _GroupTable As DataTable
|
||||
Private _UserToGroupTable As DataTable
|
||||
Private _GroupToGroupTable As DataTable
|
||||
|
||||
Private _UserToGroupControl As UserControlAssignment
|
||||
Private _GroupToGroupControl As UserControlAssignment
|
||||
|
||||
Public Sub New()
|
||||
' Dieser Aufruf ist für den Designer erforderlich.
|
||||
InitializeComponent()
|
||||
|
||||
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
|
||||
_Logger = My.LogConfig.GetLogger()
|
||||
End Sub
|
||||
|
||||
Private Async Sub frmUserManager_Load(sender As Object, e As EventArgs) Handles MyBase.Load
|
||||
Await InitDataAsync()
|
||||
|
||||
UserNavbar.SelectedItem = NavbarUser2Group
|
||||
End Sub
|
||||
|
||||
Private Sub ShowUserToGroupControl()
|
||||
If _UserToGroupControl Is Nothing Then
|
||||
_UserToGroupControl = New UserControlAssignment() With {
|
||||
.TextAssignedToParent = "Zugeordnete Benutzer",
|
||||
.TextNotAssignedToParent = "Nicht zugeordnete Benutzer",
|
||||
.TextParentList = "Verfügbare Gruppen",
|
||||
.Dock = DockStyle.Fill
|
||||
}
|
||||
|
||||
AddHandler _UserToGroupControl.ChildAdded, AddressOf HandleUserAddedToGroup
|
||||
AddHandler _UserToGroupControl.ChildRemoved, AddressOf HandleUserRemovedFromGroup
|
||||
|
||||
_UserToGroupControl.Init(_GroupTable, _UserTable, _UserToGroupTable, "GROUP_ID", "USER_ID")
|
||||
|
||||
ContentPanel.Controls.Add(_UserToGroupControl)
|
||||
End If
|
||||
|
||||
_UserToGroupControl.Visible = True
|
||||
End Sub
|
||||
|
||||
Private Sub ShowGroupToGroupControl()
|
||||
If _GroupToGroupControl Is Nothing Then
|
||||
_GroupToGroupControl = New UserControlAssignment() With {
|
||||
.TextAssignedToParent = "Zugeordnete Gruppen",
|
||||
.TextNotAssignedToParent = "Nicht zugeordnete Gruppen",
|
||||
.TextParentList = "Verfügbare Gruppen",
|
||||
.Dock = DockStyle.Fill
|
||||
}
|
||||
|
||||
AddHandler _GroupToGroupControl.ChildAdded, AddressOf HandleGroupAddedToGroup
|
||||
AddHandler _GroupToGroupControl.ChildRemoved, AddressOf HandleGroupRemovedFromGroup
|
||||
|
||||
_GroupToGroupControl.Init(_GroupTable, _GroupTable, _GroupToGroupTable, "GROUP2_ID", "GROUP1_ID")
|
||||
|
||||
_ContentPanel.Controls.Add(_GroupToGroupControl)
|
||||
End If
|
||||
|
||||
_GroupToGroupControl.Visible = True
|
||||
End Sub
|
||||
|
||||
Private Async Function InitDataAsync() As Task
|
||||
_UserTable = Await GetAttributeListAsync("User")
|
||||
_GroupTable = Await GetAttributeListAsync("Group")
|
||||
_UserToGroupTable = Await GetAttributeListAsync("User2Group")
|
||||
_GroupToGroupTable = Await GetAttributeListAsync("Group2Group")
|
||||
End Function
|
||||
|
||||
Private Async Function UpdateDataAsync() As Task
|
||||
_UserTable = Await GetAttributeListAsync("User")
|
||||
_GroupTable = Await GetAttributeListAsync("Group")
|
||||
_UserToGroupTable = Await GetAttributeListAsync("User2Group")
|
||||
_GroupToGroupTable = Await GetAttributeListAsync("Group2Group")
|
||||
|
||||
_UserToGroupControl.UpdateData(_GroupTable, _UserTable, _UserToGroupTable)
|
||||
_GroupToGroupControl.UpdateData(_GroupTable, _GroupTable, _GroupToGroupTable)
|
||||
End Function
|
||||
|
||||
Private Async Sub HandleUserAddedToGroup(GroupId As Integer, UserId As Integer, RelationRecordId As Integer)
|
||||
Dim oRecordId = Await My.Common.Commands.FNICM_RADM_NEW_USER2GROUP(UserId, GroupId)
|
||||
|
||||
Await UpdateDataAsync()
|
||||
End Sub
|
||||
|
||||
Private Async Sub HandleUserRemovedFromGroup(GroupId As Integer, UserId As Integer, RelationRecordId As Integer)
|
||||
Dim oResult = Await My.Common.Commands.FNICM_DELETE_RECORD_FINALLY(RelationRecordId)
|
||||
|
||||
Await UpdateDataAsync()
|
||||
End Sub
|
||||
|
||||
Private Async Sub HandleGroupAddedToGroup(ParentGroupId As Integer, GroupId As Integer, RelationRecordId As Integer)
|
||||
Dim oRecordId = Await My.Common.Commands.FNICM_RADM_NEW_GROUP2GROUP(GroupId, ParentGroupId)
|
||||
|
||||
Await UpdateDataAsync()
|
||||
End Sub
|
||||
|
||||
Private Async Sub HandleGroupRemovedFromGroup(ParentGroupId As Integer, GroupId As Integer, RelationRecordId As Integer)
|
||||
Dim oResult = Await My.Common.Commands.FNICM_DELETE_RECORD_FINALLY(RelationRecordId)
|
||||
|
||||
Await UpdateDataAsync()
|
||||
End Sub
|
||||
|
||||
Private Async Function GetAttributeListAsync(AttributeName As String) As Task(Of DataTable)
|
||||
Try
|
||||
Dim oSQL = $"SELECT * FROM VWICM_{AttributeName.ToUpper}"
|
||||
Dim oRequest = Await My.Channel.CreateDatabaseRequestAsync($"List Attribute {AttributeName}", False)
|
||||
Dim oResult = Await My.Channel.ReturnDatatableAsync(oSQL)
|
||||
|
||||
Await My.Channel.CloseDatabaseRequestAsync()
|
||||
|
||||
Return oResult.Table
|
||||
Catch ex As Exception
|
||||
_Logger.Error(ex)
|
||||
Throw ex
|
||||
End Try
|
||||
End Function
|
||||
|
||||
Private Sub BarButtonUserEdit_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonUserEdit.ItemClick
|
||||
Dim oForm As New frmObjectEditor(ClassConstants.DB_USER_ATTRIBUTE_ID, ClassConstants.DB_USER_ATTRIBUTE_SYSKEY, _UserTable)
|
||||
oForm.Show()
|
||||
End Sub
|
||||
|
||||
Private Sub BarButtonGroupEdit_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonGroupEdit.ItemClick
|
||||
Dim oForm As New frmObjectEditor(ClassConstants.DB_GROUP_ATTRIBUTE_ID, ClassConstants.DB_GROUP_ATTRIBUTE_SYSKEY, _GroupTable)
|
||||
oForm.Show()
|
||||
End Sub
|
||||
|
||||
Private Async Sub BarButtonRefresh_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonRefresh.ItemClick
|
||||
Await UpdateDataAsync()
|
||||
End Sub
|
||||
|
||||
Private Sub OfficeNavigationBar1_SelectedItemChanged(sender As Object, e As DevExpress.XtraBars.Navigation.NavigationBarItemEventArgs) Handles UserNavbar.SelectedItemChanged
|
||||
' Hide all UserControls
|
||||
For Each oControl As Control In ContentPanel.Controls
|
||||
oControl.Visible = False
|
||||
Next
|
||||
|
||||
' Then check the currently selected navbar item and show the corresponding UserControl
|
||||
If UserNavbar.SelectedItem.Equals(NavbarUser2Group) Then
|
||||
ShowUserToGroupControl()
|
||||
ElseIf UserNavbar.SelectedItem.Equals(NavbarGroup2Group) Then
|
||||
ShowGroupToGroupControl()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
End Class
|
||||
Reference in New Issue
Block a user