Add Outlook Inspired and Stock Market demos

This commit is contained in:
maxerokh
2018-12-13 18:49:44 +03:00
parent b5cab35919
commit 2e45b5d38f
833 changed files with 124450 additions and 47 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,120 @@
namespace DevExpress.DevAV.Modules {
using System.Windows.Forms;
using DevExpress.DevAV;
using DevExpress.DevAV.ViewModels;
using DevExpress.XtraEditors;
public partial class EmployeeEditView : BaseModuleControl, IRibbonModule {
public EmployeeEditView()
: base(typeof(EmployeeViewModel)) {
InitializeComponent();
GalleryItemAppearances.Apply(galleryQuickLetters);
//
BindCommands();
BindEditors();
gvEvaluations.OptionsView.ShowPreview = false;
gvTasks.OptionsView.ShowPreview = false;
}
public EmployeeViewModel ViewModel {
get { return GetViewModel<EmployeeViewModel>(); }
}
public EmployeeCollectionViewModel CollectionViewModel {
get { return GetParentViewModel<EmployeeCollectionViewModel>(); }
}
protected override void OnParentViewModelAttached() {
BindCollectionViewCommands();
}
void BindCommands() {
var fluent = mvvmContext.OfType<EmployeeViewModel>();
//Save & Close
fluent.BindCommand(biSave, x => x.Save());
fluent.BindCommand(biClose, x => x.Close());
fluent.BindCommand(biSaveAndClose, x => x.SaveAndClose());
//Delete
fluent.BindCommand(biDelete, x => x.Delete());
//Reload
fluent.BindCommand(biRefresh, x => x.Reset());
}
void BindCollectionViewCommands() {
var fluent = mvvmContext.OfType<EmployeeViewModel>();
//Map
fluent.BindCommand(biShowMap, x => x.ShowMap());
//Print
fluent.BindCommand(bmiPrintProfile, x => x.Print(EmployeeReportType.None), x => EmployeeReportType.Profile);
fluent.BindCommand(bmiPrintSummary, x => x.Print(EmployeeReportType.None), x => EmployeeReportType.Summary);
fluent.BindCommand(bmiPrintDirectory, x => x.Print(EmployeeReportType.None), x => EmployeeReportType.Directory);
fluent.BindCommand(bmiPrintTaskList, x => x.Print(EmployeeReportType.None), x => EmployeeReportType.TaskList);
//Mail Merge
fluent.BindCommand(biMailMerge, x => x.MailMerge());
//Quick Letters
fluent.BindCommand(GalleryQuickLetterItem(0), x => x.QuickLetter(default(EmployeeMailTemplate)), x => EmployeeMailTemplate.ThankYouNote);
fluent.BindCommand(GalleryQuickLetterItem(1), x => x.QuickLetter(default(EmployeeMailTemplate)), x => EmployeeMailTemplate.EmployeeOfTheMonth);
fluent.BindCommand(GalleryQuickLetterItem(2), x => x.QuickLetter(default(EmployeeMailTemplate)), x => EmployeeMailTemplate.ServiceExcellence);
fluent.BindCommand(GalleryQuickLetterItem(3), x => x.QuickLetter(default(EmployeeMailTemplate)), x => EmployeeMailTemplate.ProbationNotice);
fluent.BindCommand(GalleryQuickLetterItem(4), x => x.QuickLetter(default(EmployeeMailTemplate)), x => EmployeeMailTemplate.WelcomeToDevAV);
//
fluent.BindCommand(biMeeting, x => x.ShowMeeting());
fluent.BindCommand(biTask, x => x.ShowTask());
}
XtraBars.Ribbon.GalleryItem GalleryQuickLetterItem(int index) {
return galleryQuickLetters.Gallery.Groups[0].Items[index];
}
void BindEditors() {
StatusImageComboBoxEdit.Properties.Items.AddEnum<EmployeeStatus>();
EditorHelpers.CreatePersonPrefixImageComboBox(PrefixImageComboBoxEdit.Properties, null);
colPriority.ColumnEdit = EditorHelpers.CreateTaskPriorityImageComboBox(null, gridControlTasks.RepositoryItems);
DepartmentImageComboBoxEdit.Properties.Items.AddEnum<EmployeeDepartment>();
StateImageComboBoxEdit.Properties.Items.AddEnum<StateEnum>();
//
ZipCodeTextEdit.DataBindings.Add(new Binding("EditValue", bindingSource, "Address.ZipCode", true, DataSourceUpdateMode.OnPropertyChanged));
StateImageComboBoxEdit.DataBindings.Add(new Binding("EditValue", bindingSource, "Address.State", true, DataSourceUpdateMode.OnPropertyChanged));
CityTextEdit.DataBindings.Add(new Binding("EditValue", bindingSource, "Address.City", true, DataSourceUpdateMode.OnPropertyChanged));
AddressTextEdit.DataBindings.Add(new Binding("EditValue", bindingSource, "Address.Line", true, DataSourceUpdateMode.OnPropertyChanged));
//
var fluent = mvvmContext.OfType<EmployeeViewModel>();
fluent.BindCommand(ContactButton(MobilePhoneTextEdit), x => x.Contacts.MobileCall());
fluent.BindCommand(ContactButton(HomePhoneTextEdit), x => x.Contacts.HomeCall());
fluent.BindCommand(ContactButton(EmailTextEdit), x => x.Contacts.MailTo());
fluent.BindCommand(ContactButton(SkypeTextEdit), x => x.Contacts.VideoCall());
//
fluent.SetBinding(ribbonControl, r => r.ApplicationDocumentCaption, x => x.Title);
fluent.SetObjectDataSourceBinding(bindingSource, x => x.Entity, x => x.Update());
//
foreach(Control control in moduleDataLayout.Controls) {
BaseEdit edit = control as BaseEdit;
if(edit == null || edit.DataBindings.Count == 0) continue;
EditorHelpers.ApplyBindingSettings<Employee>(edit, moduleDataLayout);
}
//
FirstNameTextEdit.EditValueChanged += (s, e) => QueueFullNameUpdate();
LastNameTextEdit.EditValueChanged += (s, e) => QueueFullNameUpdate();
FullNameTextEdit.EditValueChanged += (s, e) => QueueFullNameUpdate();
}
XtraEditors.Controls.EditorButton ContactButton(XtraEditors.ButtonEdit edit, int index = 0) {
return edit.Properties.Buttons[index];
}
int fullNameUpdateQueued = 0;
void QueueFullNameUpdate() {
if(0 == fullNameUpdateQueued) {
fullNameUpdateQueued++;
BeginInvoke(new MethodInvoker(UpdateFullNameEditValue));
}
else fullNameUpdateQueued++;
}
void UpdateFullNameEditValue() {
FullNameTextEdit.DataBindings["EditValue"].ReadValue();
fullNameUpdateQueued = 0;
}
#region
XtraBars.Ribbon.RibbonControl IRibbonModule.Ribbon {
get { return ribbonControl; }
}
#endregion
void gvEvaluations_RowCellStyle(object sender, XtraGrid.Views.Grid.RowCellStyleEventArgs e) {
Evaluation evaluation = gvEvaluations.GetRow(e.RowHandle) as Evaluation;
if(evaluation == null) return;
if(evaluation.Rating == EvaluationRating.Good) e.Appearance.ForeColor = ColorHelper.InformationColor;
if(evaluation.Rating == EvaluationRating.Poor) e.Appearance.ForeColor = ColorHelper.CriticalColor;
}
}
}

View File

@@ -0,0 +1,135 @@
<?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>
<metadata name="mvvmContext.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="bindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>144, 17</value>
</metadata>
<metadata name="bindingSourceTasks.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>467, 17</value>
</metadata>
<metadata name="bindingSourceEvaluations.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>275, 17</value>
</metadata>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>45</value>
</metadata>
</root>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,154 @@
namespace DevExpress.DevAV.Modules {
using System;
using System.Drawing;
using DevExpress.DevAV;
using DevExpress.DevAV.ViewModels;
using DevExpress.Utils;
using DevExpress.XtraGrid.Views.Base;
using DevExpress.XtraLayout.Utils;
public partial class EmployeeMailMerge : BaseModuleControl, IRibbonModule {
public EmployeeMailMerge()
: base(typeof(EmployeeMailMergeViewModel)) {
InitializeComponent();
BindCommands();
BindEditors();
UpdateSelectTemplateUI();
new ZoomLevelManager(beZoomLevel, bbiZoomDialog, new SnapZoomingModel(snapControl));
//
ViewModel.MailTemplateChanged += ViewModel_MailTemplateChanged;
ViewModel.MailTemplateSelectedChanged += ViewModel_MailTemplateSelectedChanged;
ViewModel.Save += ViewModel_Save;
snapControl.ModifiedChanged += snapControl_ModifiedChanged;
}
protected override void OnMVVMContextReleasing() {
ViewModel.Save -= ViewModel_Save;
ViewModel.MailTemplateChanged -= ViewModel_MailTemplateChanged;
ViewModel.MailTemplateSelectedChanged -= ViewModel_MailTemplateSelectedChanged;
}
protected override void OnDisposing() {
snapControl.ModifiedChanged -= snapControl_ModifiedChanged;
base.OnDisposing();
}
void ViewModel_Save(object sender, EventArgs e) {
snapControl.SaveDocumentAs();
}
void ViewModel_MailTemplateSelectedChanged(object sender, EventArgs e) {
UpdateSelectTemplateUI();
}
void ViewModel_MailTemplateChanged(object sender, EventArgs e) {
UpdateEditor(ViewModel.MailTemplate.GetValueOrDefault());
}
void UpdateEditor(EmployeeMailTemplate mailTemplate) {
ViewModel.Modified = snapControl.Modified;
cbMailTemplate.EditValue = mailTemplate;
LoadTemplate(mailTemplate);
SynchronizeCurrentRecordWithSnap();
}
void LoadTemplate(EmployeeMailTemplate mailTemplate) {
string template = (mailTemplate.ToFileName() + ".snx");
using(var stream = MailMergeTemplatesHelper.GetTemplateStream(template))
snapControl.LoadDocumentTemplate(stream, DevExpress.Snap.Core.API.SnapDocumentFormat.Snap);
ribbonControl.ApplicationDocumentCaption = DevExpress.XtraEditors.EnumDisplayTextHelper.GetDisplayText(mailTemplate);
}
void UpdateSelectTemplateUI() {
layoutControlMailMergeSetting.Visibility = (ViewModel.IsMailTemplateSelected) ?
LayoutVisibility.Never : LayoutVisibility.Always;
mailMergeRibbonPage1.Visible = !ViewModel.IsMailTemplateSelected;
}
public EmployeeMailMergeViewModel ViewModel {
get { return GetViewModel<EmployeeMailMergeViewModel>(); }
}
public EmployeeCollectionViewModel CollectionViewModel {
get { return GetParentViewModel<EmployeeCollectionViewModel>(); }
}
protected override void OnLoad(EventArgs ea) {
base.OnLoad(ea);
CollectionViewModel.GetEntities();
bindingSource.DataSource = CollectionViewModel.SelectedEntity;
employeesList.DataSource = CollectionViewModel.GetEntities();
gridView.FocusedRowHandle = gridView.LocateByValue("Id", CollectionViewModel.SelectedEntity.Id);
if(snapControl.Document.IsEmpty)
LoadTemplate(ViewModel.MailTemplate.GetValueOrDefault());
snapControl.DataSource = employeesList.DataSource;
SynchronizeCurrentRecordWithSnap();
ViewModel.Modified = snapControl.Modified;
}
void BindCommands() {
biClose.BindCommand(() => ViewModel.Close(), ViewModel);
}
void BindEditors() {
employeesList.Load += (s, e) => GridHelper.SetFindControlImages(employeesList);
gridView.FocusedRowObjectChanged += gridView_FocusedRowObjectChanged;
cbMailTemplate.Properties.Items.AddEnum<EmployeeMailTemplate>();
cbMailTemplate.Properties.SmallImages = CreateImageCollection();
foreach(DevExpress.XtraEditors.Controls.ImageComboBoxItem item in cbMailTemplate.Properties.Items)
item.ImageIndex = (int)(EmployeeMailTemplate)item.Value;
cbMailTemplate.EditValue = ViewModel.MailTemplate.GetValueOrDefault();
cbMailTemplate.EditValueChanged += cbMailTemplate_EditValueChanged;
}
static ImageCollection CreateImageCollection() {
ImageCollection ret = new ImageCollection();
ret.ImageSize = new Size(16, 16);
ret.AddImage(Properties.Resources.icon_employee_quick_thank_16);
ret.AddImage(Properties.Resources.icon_employee_quick_probation_notice_16);
ret.AddImage(Properties.Resources.icon_employee_quick_excellence_16);
ret.AddImage(Properties.Resources.icon_employee_quick_award_16);
ret.AddImage(Properties.Resources.icon_employee_quick_welcome_16);
return ret;
}
void gridView_FocusedRowObjectChanged(object sender, FocusedRowObjectChangedEventArgs e) {
Employee employee = e.Row as Employee;
if(employee != null) {
bindingSource.DataSource = employee;
SynchronizeCurrentRecordWithSnap();
}
}
void SynchronizeCurrentRecordWithSnap() {
snapControl.Options.SnapMailMergeVisualOptions.CurrentRecordIndex = gridView.GetDataSourceRowIndex(gridView.FocusedRowHandle);
}
void cbMailTemplate_EditValueChanged(object sender, EventArgs e) {
ViewModel.MailTemplate = (EmployeeMailTemplate)cbMailTemplate.EditValue;
}
void snapControl_ModifiedChanged(object sender, EventArgs e) {
ViewModel.Modified = snapControl.Modified;
}
#region
XtraBars.Ribbon.RibbonControl IRibbonModule.Ribbon {
get { return ribbonControl; }
}
#endregion
#region IZoomViewModel Members
class SnapZoomingModel : IZoomViewModel, ISupportZoom {
object IZoomViewModel.ZoomModule {
get { return this; }
}
event EventHandler IZoomViewModel.ZoomModuleChanged {
add { }
remove { }
}
DevExpress.Snap.SnapControl snapControl;
public SnapZoomingModel(DevExpress.Snap.SnapControl snapControl) {
this.snapControl = snapControl;
if(snapControl != null)
snapControl.ZoomChanged += snapControl_ZoomChanged;
}
void snapControl_ZoomChanged(object sender, EventArgs e) {
RaiseZoomChanged();
}
int ISupportZoom.ZoomLevel {
get { return (int)System.Math.Ceiling(snapControl.ActiveView.ZoomFactor * 100.0f); }
set { snapControl.ActiveView.ZoomFactor = ((float)value) / 100.0f; }
}
public event EventHandler ZoomChanged;
void RaiseZoomChanged() {
EventHandler handler = ZoomChanged;
if(handler != null)
handler(this, EventArgs.Empty);
}
}
#endregion
}
}

View File

@@ -0,0 +1,187 @@
<?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>
<metadata name="mvvmContext.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="bindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>271, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="stylesRibbonPageGroup1.ImageOptions.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAydJREFUOE9l
U1lMU1EQvbxXWqpWKItsFkpLWSxQLQTQBAyRIJa27IoPCgWhFkUBEUMUEYEUi5WIYVUQAlUBcYuiiSb+
GPkzMTGiEfwxwYhRo3yoH8ZxbuNS8CSTN3dmzrl35t5HVJXDRGUaIjEVgwTBxFeP5G0+PAnRxr5FUdAm
YTh3loTtOksUO8+Q0NwOIsu2EgD4ayS6/AKJKh0gSmM/FeAlVI/dSqybgBjTEEj1zRwVlecgMbOdhOgt
RKptWy6wobiHRBi6KdlFrqnyjTs49i2+5sqP2P2jINO338c4X6prI0GaFiJJbyaStBPLBSK4LscREazS
0FW1obh7Vm0euhd7wA6K/M4f3rG7wzHH0ILfcEGja9bxDc2zYW82muCH5Z15HJxx3KrkrCXqfaOgNPSB
f3JtB+ZcaQGCkl2flHO9z/YaPl2WyvMdfSEYubY+MjijFdbFlya4ea732Gi6+FG1ZwjWpx575yryX0tr
0PgzXPbY/JFK+Hx7EqYkQR+IRNNMBXh4fAtO+SX6XmhiJdc5HIMCUp0FxNFcEcZW23UJ9lfVFbB09xrc
1m2HPQxz0TEYhDA05/RrWaYVCadAqrVAlPE8RJWeh4iCcyDeWPJgcveWq0/2FsDSzXG4o02DIpY34UvI
Gkpm5RkNKX7J9bBWsT0R1yJqvFViv0iuZzESBYoLa34+snXAl/FRuJGWAnkMe9WTkD9tEUGItmXQO878
HP3VNPAbq2SaxkGTuRGmpx/BwqfvYCupAQ3jMuVBiDvmmR20yledE67I7fzspS4bwSU9Ep204Giye3pv
ZsCLS/l+8GZxCSpP3gefsLrrbgwf+YSZz9KSreiQwG1NEJDSCF5qM4hCswow5HYoUZQyZZR/nZs+ADNN
UuhP9wRv2UE7y/cRU7JcGEQS0ImjAgi6Kz0S7V2YJBEED+h83i7MNMCXOTv0JgnhUAz/Pebo7TCO1+eM
Zc8Sd7ckrbnxsHUrzE5UQVeqOzSoXGFXCFuLOYFT3T+sEOBjcWGZgnenXME+NchY+45ARo9xOlw6m/+x
QoAW8dFoW/SaKJE+Y+d/wQmE/AKBDjr+l9XQfgAAAABJRU5ErkJggg==
</value>
</data>
<data name="editorButtonImageOptions1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAHFJREFUOE+l
jLENwDAMw3KYbyuQy10bqIBG0tA0Axea8sjMI6zcQUREOC7ugAg3Luq0dkCEGzfcARFu3HAHRLhxwx0Q
4cYNd0BExWcPmhrM3w8qBssT7oCIZyxPuAMiXuPlCXdABI3B5A5YuYOV38lxAxXqfrmYroG/AAAAAElF
TkSuQmCC
</value>
</data>
<data name="editorButtonImageOptions2.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAbdEVYdFRpdGxlAE5leHQ7UGxheTtBcnJvdztSaWdo
dBbkDq4AAAB2SURBVDhPpYzBCcAwDAMzmGcrdHLXhqokkh4NeRwhx8kjM4+wcgcrm4i4in4XuBMBKs5C
jnAnAlTcB+QIdyLAO5Yj3IkA03g5wp0IQOPvCHfLZ8aMjw/crhMBeFy0k04EcOOGOxHAjRvuRAA3brgT
sYuV/8nxAPLGfrkWE9IJAAAAAElFTkSuQmCC
</value>
</data>
<data name="editorButtonImageOptions3.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAndEVYdFRpdGxlAEZpcnN0O0Fycm93O0JhY2s7U2tp
cDtQcmV2O1Jld2luZAGOkNQAAACBSURBVDhPpYxBCgAhDAN9mG8T9uVdA41o0sPKHobCMGmLiF+U8gYT
vfeY4O4M7YiJGeuDAacdMYFYx0A7YiIHxxhoR0zk4BgD7YgJHRLtiIlqDLQjJnLw7GOgHTGRA9zjiXbE
RA5wjyfaERM54IP1RDtiAvE2Xk+0I6W8oZTfifYCAUaHaHtm5LMAAAAASUVORK5CYII=
</value>
</data>
<data name="editorButtonImageOptions4.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAqdEVYdFRpdGxlAExhc3Q7QXJyb3c7Rm9yd2FyZDtT
a2lwO05leHQ7UmV3aW5kO1tEkkUAAAB5SURBVDhPpYxLCoBADEM92JxN8OQ1lUGSkMWMLh4lzeeoql/E
5w7x2YwxTtCXgaU5EUyHgY/A0pwIpsMTHoGlORHMLPsILM2JYKjMI7A0J4Kx8ovnRDCp3HhOBBPKV1/P
iWBC+fl5TgQTyp8GuLw94OW9gVXic506burvh2jlaS99AAAAAElFTkSuQmCC
</value>
</data>
<metadata name="snapBarController1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>402, 17</value>
</metadata>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>110</value>
</metadata>
</root>

View File

@@ -0,0 +1,892 @@
namespace DevExpress.DevAV.Modules {
partial class EmployeeMapView {
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing) {
if(disposing && (components != null)) {
components.Dispose();
}
base.Dispose(disposing);
}
#region Component Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent() {
this.components = new System.ComponentModel.Container();
this.imageTilesLayer1 = new DevExpress.XtraMap.ImageLayer();
this.bingMapDataProvider1 = new DevExpress.XtraMap.BingMapDataProvider();
this.informationLayer1 = new DevExpress.XtraMap.InformationLayer();
this.bingGeocodeDataProvider1 = new DevExpress.XtraMap.BingGeocodeDataProvider();
this.informationLayer2 = new DevExpress.XtraMap.InformationLayer();
this.bingSearchDataProvider1 = new DevExpress.XtraMap.BingSearchDataProvider();
this.informationLayer3 = new DevExpress.XtraMap.InformationLayer();
this.bingRouteDataProvider1 = new DevExpress.XtraMap.BingRouteDataProvider();
this.routePanel = new DevExpress.XtraEditors.PanelControl();
this.gridControl = new DevExpress.XtraGrid.GridControl();
this.bindingSourceRoute = new System.Windows.Forms.BindingSource(this.components);
this.advBandedGridView1 = new DevExpress.XtraGrid.Views.BandedGrid.AdvBandedGridView();
this.gridBand1 = new DevExpress.XtraGrid.Views.BandedGrid.GridBand();
this.colManeuver = new DevExpress.XtraGrid.Views.BandedGrid.BandedGridColumn();
this.gridBand2 = new DevExpress.XtraGrid.Views.BandedGrid.GridBand();
this.colDistance = new DevExpress.XtraGrid.Views.BandedGrid.BandedGridColumn();
this.colManeuverInstruction = new DevExpress.XtraGrid.Views.BandedGrid.BandedGridColumn();
this.repositoryItemMemoEdit1 = new DevExpress.XtraEditors.Repository.RepositoryItemMemoEdit();
this.ribbonControl = new DevExpress.XtraBars.Ribbon.RibbonControl();
this.biSave = new DevExpress.XtraBars.BarButtonItem();
this.biClose = new DevExpress.XtraBars.BarButtonItem();
this.biSaveAndClose = new DevExpress.XtraBars.BarButtonItem();
this.biDelete = new DevExpress.XtraBars.BarButtonItem();
this.biDriving = new DevExpress.XtraBars.BarCheckItem();
this.biWalking = new DevExpress.XtraBars.BarCheckItem();
this.biPrint = new DevExpress.XtraBars.BarButtonItem();
this.biPrintPreview = new DevExpress.XtraBars.BarButtonItem();
this.barExportItem = new DevExpress.XtraBars.BarButtonItem();
this.ribbonPage1 = new DevExpress.XtraBars.Ribbon.RibbonPage();
this.ribbonPageGroup1 = new DevExpress.XtraBars.Ribbon.RibbonPageGroup();
this.ribbonPageGroup2 = new DevExpress.XtraBars.Ribbon.RibbonPageGroup();
this.ribbonPageGroup5 = new DevExpress.XtraBars.Ribbon.RibbonPageGroup();
this.ribbonPageGroup4 = new DevExpress.XtraBars.Ribbon.RibbonPageGroup();
this.ribbonPageGroup3 = new DevExpress.XtraBars.Ribbon.RibbonPageGroup();
this.routeResultLabel = new DevExpress.XtraEditors.LabelControl();
this.bindingSource = new System.Windows.Forms.BindingSource(this.components);
this.moduleDataLayout = new DevExpress.XtraDataLayout.DataLayoutControl();
this.AddressLabelLine2 = new DevExpress.XtraEditors.LabelControl();
this.swapRouteButtons = new DevExpress.XtraBars.Docking2010.WindowsUIButtonPanel();
this.routeButtons = new DevExpress.XtraBars.Docking2010.WindowsUIButtonPanel();
this.editPointB = new DevExpress.XtraEditors.TextEdit();
this.editPointA = new DevExpress.XtraEditors.TextEdit();
this.mapControl = new DevExpress.XtraMap.MapControl();
this.FullNameLabel = new DevExpress.XtraEditors.LabelControl();
this.AddressLabelLine1 = new DevExpress.XtraEditors.LabelControl();
this.PhotoPictureEdit = new DevExpress.XtraEditors.PictureEdit();
this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup();
this.ItemForMap = new DevExpress.XtraLayout.LayoutControlItem();
this.layoutControlGroup3 = new DevExpress.XtraLayout.LayoutControlGroup();
this.ItemForPointB = new DevExpress.XtraLayout.LayoutControlItem();
this.ItemForPointA = new DevExpress.XtraLayout.LayoutControlItem();
this.ItemForRoutePanel = new DevExpress.XtraLayout.LayoutControlItem();
this.ItemForRouteButtons = new DevExpress.XtraLayout.LayoutControlItem();
this.ItemForSwapButton = new DevExpress.XtraLayout.LayoutControlItem();
this.layoutControlGroup4 = new DevExpress.XtraLayout.LayoutControlGroup();
this.emptySpaceItem2 = new DevExpress.XtraLayout.EmptySpaceItem();
this.ItemForPhoto = new DevExpress.XtraLayout.LayoutControlItem();
this.ItemForAddressLine1 = new DevExpress.XtraLayout.LayoutControlItem();
this.ItemForFullName = new DevExpress.XtraLayout.LayoutControlItem();
this.ItemForAddressLine2 = new DevExpress.XtraLayout.LayoutControlItem();
this.simpleSeparator1 = new DevExpress.XtraLayout.SimpleSeparator();
this.simpleSeparator2 = new DevExpress.XtraLayout.SimpleSeparator();
((System.ComponentModel.ISupportInitialize)(this.mvvmContext)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.routePanel)).BeginInit();
this.routePanel.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.gridControl)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSourceRoute)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.advBandedGridView1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.repositoryItemMemoEdit1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.ribbonControl)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSource)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.moduleDataLayout)).BeginInit();
this.moduleDataLayout.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.editPointB.Properties)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.editPointA.Properties)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.mapControl)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.PhotoPictureEdit.Properties)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.ItemForMap)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup3)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.ItemForPointB)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.ItemForPointA)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.ItemForRoutePanel)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.ItemForRouteButtons)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.ItemForSwapButton)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup4)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem2)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.ItemForPhoto)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.ItemForAddressLine1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.ItemForFullName)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.ItemForAddressLine2)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.simpleSeparator1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.simpleSeparator2)).BeginInit();
this.SuspendLayout();
//
// imageTilesLayer1
//
this.imageTilesLayer1.DataProvider = this.bingMapDataProvider1;
//
// informationLayer1
//
this.informationLayer1.DataProvider = this.bingGeocodeDataProvider1;
//
// bingGeocodeDataProvider1
//
this.bingGeocodeDataProvider1.GenerateLayerItems = false;
this.bingGeocodeDataProvider1.MaxVisibleResultCount = 3;
this.bingGeocodeDataProvider1.ProcessMouseEvents = true;
//
// informationLayer2
//
this.informationLayer2.DataProvider = this.bingSearchDataProvider1;
//
// bingSearchDataProvider1
//
this.bingSearchDataProvider1.GenerateLayerItems = false;
//
// informationLayer3
//
this.informationLayer3.DataProvider = this.bingRouteDataProvider1;
this.informationLayer3.HighlightedItemStyle.Stroke = System.Drawing.Color.Cyan;
this.informationLayer3.HighlightedItemStyle.StrokeWidth = 3;
this.informationLayer3.ItemStyle.Stroke = System.Drawing.Color.Cyan;
this.informationLayer3.ItemStyle.StrokeWidth = 3;
//
// bingRouteDataProvider1
//
this.bingRouteDataProvider1.RouteOptions.DistanceUnit = DevExpress.XtraMap.DistanceMeasureUnit.Mile;
//
// routePanel
//
this.routePanel.Controls.Add(this.gridControl);
this.routePanel.Controls.Add(this.routeResultLabel);
this.routePanel.Location = new System.Drawing.Point(870, 252);
this.routePanel.Name = "routePanel";
this.routePanel.Size = new System.Drawing.Size(340, 359);
this.routePanel.TabIndex = 32;
//
// gridControl
//
this.gridControl.DataSource = this.bindingSourceRoute;
this.gridControl.Dock = System.Windows.Forms.DockStyle.Fill;
this.gridControl.Location = new System.Drawing.Point(2, 38);
this.gridControl.MainView = this.advBandedGridView1;
this.gridControl.MenuManager = this.ribbonControl;
this.gridControl.Name = "gridControl";
this.gridControl.RepositoryItems.AddRange(new DevExpress.XtraEditors.Repository.RepositoryItem[] {
this.repositoryItemMemoEdit1});
this.gridControl.ShowOnlyPredefinedDetails = true;
this.gridControl.Size = new System.Drawing.Size(336, 319);
this.gridControl.TabIndex = 6;
this.gridControl.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
this.advBandedGridView1});
//
// bindingSourceRoute
//
this.bindingSourceRoute.DataSource = typeof(DevExpress.DevAV.Presenters.RoutePoint);
//
// advBandedGridView1
//
this.advBandedGridView1.Bands.AddRange(new DevExpress.XtraGrid.Views.BandedGrid.GridBand[] {
this.gridBand1,
this.gridBand2});
this.advBandedGridView1.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder;
this.advBandedGridView1.Columns.AddRange(new DevExpress.XtraGrid.Views.BandedGrid.BandedGridColumn[] {
this.colManeuver,
this.colManeuverInstruction,
this.colDistance});
this.advBandedGridView1.GridControl = this.gridControl;
this.advBandedGridView1.Name = "advBandedGridView1";
this.advBandedGridView1.OptionsBehavior.Editable = false;
this.advBandedGridView1.OptionsFind.AllowFindPanel = false;
this.advBandedGridView1.OptionsView.ColumnAutoWidth = true;
this.advBandedGridView1.OptionsView.ColumnHeaderAutoHeight = DevExpress.Utils.DefaultBoolean.True;
this.advBandedGridView1.OptionsView.ShowBands = false;
this.advBandedGridView1.OptionsView.ShowColumnHeaders = false;
this.advBandedGridView1.OptionsView.ShowGroupPanel = false;
this.advBandedGridView1.OptionsView.ShowHorizontalLines = DevExpress.Utils.DefaultBoolean.False;
this.advBandedGridView1.OptionsView.ShowIndicator = false;
this.advBandedGridView1.OptionsView.ShowVerticalLines = DevExpress.Utils.DefaultBoolean.False;
this.advBandedGridView1.RowHeight = 16;
//
// gridBand1
//
this.gridBand1.Columns.Add(this.colManeuver);
this.gridBand1.Name = "gridBand1";
this.gridBand1.OptionsBand.AllowSize = false;
this.gridBand1.OptionsBand.FixedWidth = true;
this.gridBand1.VisibleIndex = 0;
this.gridBand1.Width = 64;
//
// colManeuver
//
this.colManeuver.FieldName = "Maneuver";
this.colManeuver.Name = "colManeuver";
this.colManeuver.OptionsColumn.AllowEdit = false;
this.colManeuver.OptionsColumn.AllowFocus = false;
this.colManeuver.RowCount = 4;
this.colManeuver.Visible = true;
this.colManeuver.Width = 64;
//
// gridBand2
//
this.gridBand2.Columns.Add(this.colDistance);
this.gridBand2.Columns.Add(this.colManeuverInstruction);
this.gridBand2.Name = "gridBand2";
this.gridBand2.VisibleIndex = 1;
this.gridBand2.Width = 254;
//
// colDistance
//
this.colDistance.AppearanceCell.Font = new System.Drawing.Font("Segoe UI", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.colDistance.AppearanceCell.Options.UseFont = true;
this.colDistance.AppearanceCell.Options.UseTextOptions = true;
this.colDistance.AppearanceCell.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Near;
this.colDistance.FieldName = "Distance";
this.colDistance.Name = "colDistance";
this.colDistance.OptionsColumn.AllowEdit = false;
this.colDistance.OptionsColumn.AllowFocus = false;
this.colDistance.Visible = true;
this.colDistance.Width = 254;
//
// colManeuverInstruction
//
this.colManeuverInstruction.AppearanceCell.Font = new System.Drawing.Font("Segoe UI", 12F);
this.colManeuverInstruction.AppearanceCell.Options.UseFont = true;
this.colManeuverInstruction.AppearanceCell.Options.UseTextOptions = true;
this.colManeuverInstruction.AppearanceCell.TextOptions.VAlignment = DevExpress.Utils.VertAlignment.Top;
this.colManeuverInstruction.AppearanceCell.TextOptions.WordWrap = DevExpress.Utils.WordWrap.Wrap;
this.colManeuverInstruction.ColumnEdit = this.repositoryItemMemoEdit1;
this.colManeuverInstruction.FieldName = "ManeuverInstruction";
this.colManeuverInstruction.Name = "colManeuverInstruction";
this.colManeuverInstruction.OptionsColumn.AllowEdit = false;
this.colManeuverInstruction.OptionsColumn.AllowFocus = false;
this.colManeuverInstruction.RowCount = 3;
this.colManeuverInstruction.RowIndex = 1;
this.colManeuverInstruction.Visible = true;
this.colManeuverInstruction.Width = 254;
//
// repositoryItemMemoEdit1
//
this.repositoryItemMemoEdit1.Name = "repositoryItemMemoEdit1";
//
// ribbonControl
//
this.ribbonControl.ExpandCollapseItem.Id = 0;
this.ribbonControl.Items.AddRange(new DevExpress.XtraBars.BarItem[] {
this.ribbonControl.ExpandCollapseItem,
this.biSave,
this.biClose,
this.biSaveAndClose,
this.biDelete,
this.biDriving,
this.biWalking,
this.biPrint,
this.biPrintPreview,
this.barExportItem});
this.ribbonControl.Location = new System.Drawing.Point(0, 0);
this.ribbonControl.MaxItemId = 12;
this.ribbonControl.Name = "ribbonControl";
this.ribbonControl.Pages.AddRange(new DevExpress.XtraBars.Ribbon.RibbonPage[] {
this.ribbonPage1});
this.ribbonControl.Size = new System.Drawing.Size(1226, 141);
//
// biSave
//
this.biSave.AllowGlyphSkinning = DevExpress.Utils.DefaultBoolean.False;
this.biSave.Caption = "Save";
this.biSave.Id = 1;
this.biSave.ImageUri.ResourceType = typeof(DevExpress.DevAV.MainForm);
this.biSave.ImageUri.Uri = "resource://DevExpress.DevAV.Resources.Save.svg";
this.biSave.Name = "biSave";
//
// biClose
//
this.biClose.Caption = "Close";
this.biClose.Glyph = global::DevExpress.DevAV.Properties.Resources.icon_close_16;
this.biClose.Id = 2;
this.biClose.ImageUri.ResourceType = typeof(DevExpress.DevAV.MainForm);
this.biClose.ImageUri.Uri = "resource://DevExpress.DevAV.Resources.Close.svg";
this.biClose.ItemShortcut = new DevExpress.XtraBars.BarShortcut(System.Windows.Forms.Keys.Escape);
this.biClose.LargeGlyph = global::DevExpress.DevAV.Properties.Resources.icon_close_32;
this.biClose.Name = "biClose";
//
// biSaveAndClose
//
this.biSaveAndClose.AllowGlyphSkinning = DevExpress.Utils.DefaultBoolean.False;
this.biSaveAndClose.Caption = "Save && Close";
this.biSaveAndClose.Id = 3;
this.biSaveAndClose.ImageUri.ResourceType = typeof(DevExpress.DevAV.MainForm);
this.biSaveAndClose.ImageUri.Uri = "resource://DevExpress.DevAV.Resources.SaveAndClose.svg";
this.biSaveAndClose.Name = "biSaveAndClose";
//
// biDelete
//
this.biDelete.AllowGlyphSkinning = DevExpress.Utils.DefaultBoolean.False;
this.biDelete.Caption = "Delete";
this.biDelete.Id = 4;
this.biDelete.ImageUri.ResourceType = typeof(DevExpress.DevAV.MainForm);
this.biDelete.ImageUri.Uri = "resource://DevExpress.DevAV.Resources.Delete.svg";
this.biDelete.Name = "biDelete";
//
// biDriving
//
this.biDriving.AllowGlyphSkinning = DevExpress.Utils.DefaultBoolean.False;
this.biDriving.Caption = "Driving";
this.biDriving.Id = 5;
this.biDriving.ImageUri.ResourceType = typeof(DevExpress.DevAV.MainForm);
this.biDriving.ImageUri.Uri = "resource://DevExpress.DevAV.Resources.Driving.svg";
this.biDriving.Name = "biDriving";
//
// biWalking
//
this.biWalking.AllowGlyphSkinning = DevExpress.Utils.DefaultBoolean.False;
this.biWalking.Caption = "Walking";
this.biWalking.Id = 6;
this.biWalking.ImageUri.ResourceType = typeof(DevExpress.DevAV.MainForm);
this.biWalking.ImageUri.Uri = "resource://DevExpress.DevAV.Resources.Walking.svg";
this.biWalking.Name = "biWalking";
//
// biPrint
//
this.biPrint.AllowGlyphSkinning = DevExpress.Utils.DefaultBoolean.False;
this.biPrint.Caption = "Print";
this.biPrint.Id = 8;
this.biPrint.ImageUri.ResourceType = typeof(DevExpress.DevAV.MainForm);
this.biPrint.ImageUri.Uri = "resource://DevExpress.DevAV.Resources.Print.svg";
this.biPrint.Name = "biPrint";
//
// biPrintPreview
//
this.biPrintPreview.AllowGlyphSkinning = DevExpress.Utils.DefaultBoolean.False;
this.biPrintPreview.Caption = "Print Preview";
this.biPrintPreview.Id = 9;
this.biPrintPreview.ImageUri.ResourceType = typeof(DevExpress.DevAV.MainForm);
this.biPrintPreview.ImageUri.Uri = "resource://DevExpress.DevAV.Resources.PrintPreview.svg";
this.biPrintPreview.Name = "biPrintPreview";
//
// barExportItem
//
this.barExportItem.AllowGlyphSkinning = DevExpress.Utils.DefaultBoolean.False;
this.barExportItem.Caption = "Export";
this.barExportItem.Id = 11;
this.barExportItem.ImageUri.ResourceType = typeof(DevExpress.DevAV.MainForm);
this.barExportItem.ImageUri.Uri = "resource://DevExpress.DevAV.Resources.Export.svg";
this.barExportItem.LargeImageIndex = 50;
this.barExportItem.Name = "barExportItem";
//
// ribbonPage1
//
this.ribbonPage1.Groups.AddRange(new DevExpress.XtraBars.Ribbon.RibbonPageGroup[] {
this.ribbonPageGroup1,
this.ribbonPageGroup2,
this.ribbonPageGroup5,
this.ribbonPageGroup4,
this.ribbonPageGroup3});
this.ribbonPage1.Name = "ribbonPage1";
this.ribbonPage1.Text = "CONTACT";
//
// ribbonPageGroup1
//
this.ribbonPageGroup1.AllowTextClipping = false;
this.ribbonPageGroup1.ItemLinks.Add(this.biSave);
this.ribbonPageGroup1.ItemLinks.Add(this.biSaveAndClose);
this.ribbonPageGroup1.MergeOrder = 0;
this.ribbonPageGroup1.Name = "ribbonPageGroup1";
this.ribbonPageGroup1.ShowCaptionButton = false;
//
// ribbonPageGroup2
//
this.ribbonPageGroup2.AllowTextClipping = false;
this.ribbonPageGroup2.ItemLinks.Add(this.biDelete);
this.ribbonPageGroup2.MergeOrder = 0;
this.ribbonPageGroup2.Name = "ribbonPageGroup2";
this.ribbonPageGroup2.ShowCaptionButton = false;
this.ribbonPageGroup2.Text = "Delete";
//
// ribbonPageGroup5
//
this.ribbonPageGroup5.AllowTextClipping = false;
this.ribbonPageGroup5.ItemLinks.Add(this.biPrintPreview);
this.ribbonPageGroup5.ItemLinks.Add(this.biPrint);
this.ribbonPageGroup5.ItemLinks.Add(this.barExportItem);
this.ribbonPageGroup5.MergeOrder = 0;
this.ribbonPageGroup5.Name = "ribbonPageGroup5";
this.ribbonPageGroup5.ShowCaptionButton = false;
this.ribbonPageGroup5.Text = "Print and Export";
//
// ribbonPageGroup4
//
this.ribbonPageGroup4.AllowTextClipping = false;
this.ribbonPageGroup4.ItemLinks.Add(this.biDriving);
this.ribbonPageGroup4.ItemLinks.Add(this.biWalking);
this.ribbonPageGroup4.MergeOrder = 0;
this.ribbonPageGroup4.Name = "ribbonPageGroup4";
this.ribbonPageGroup4.ShowCaptionButton = false;
this.ribbonPageGroup4.Text = "Route Options";
//
// ribbonPageGroup3
//
this.ribbonPageGroup3.AllowTextClipping = false;
this.ribbonPageGroup3.ItemLinks.Add(this.biClose);
this.ribbonPageGroup3.MergeOrder = 0;
this.ribbonPageGroup3.Name = "ribbonPageGroup3";
this.ribbonPageGroup3.ShowCaptionButton = false;
this.ribbonPageGroup3.Text = "Close";
//
// routeResultLabel
//
this.routeResultLabel.Appearance.Font = new System.Drawing.Font("Segoe UI", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.routeResultLabel.Appearance.Options.UseFont = true;
this.routeResultLabel.AutoSizeMode = DevExpress.XtraEditors.LabelAutoSizeMode.Vertical;
this.routeResultLabel.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bindingSource, "RouteResult", true));
this.routeResultLabel.Dock = System.Windows.Forms.DockStyle.Top;
this.routeResultLabel.Location = new System.Drawing.Point(2, 2);
this.routeResultLabel.Name = "routeResultLabel";
this.routeResultLabel.Padding = new System.Windows.Forms.Padding(12, 12, 12, 24);
this.routeResultLabel.Size = new System.Drawing.Size(336, 36);
this.routeResultLabel.TabIndex = 29;
//
// bindingSource
//
this.bindingSource.DataSource = typeof(DevExpress.DevAV.ViewModels.EmployeeMapViewModel);
//
// moduleDataLayout
//
this.moduleDataLayout.AllowCustomization = false;
this.moduleDataLayout.Controls.Add(this.AddressLabelLine2);
this.moduleDataLayout.Controls.Add(this.swapRouteButtons);
this.moduleDataLayout.Controls.Add(this.routeButtons);
this.moduleDataLayout.Controls.Add(this.routePanel);
this.moduleDataLayout.Controls.Add(this.editPointB);
this.moduleDataLayout.Controls.Add(this.editPointA);
this.moduleDataLayout.Controls.Add(this.mapControl);
this.moduleDataLayout.Controls.Add(this.FullNameLabel);
this.moduleDataLayout.Controls.Add(this.AddressLabelLine1);
this.moduleDataLayout.Controls.Add(this.PhotoPictureEdit);
this.moduleDataLayout.DataSource = this.bindingSource;
this.moduleDataLayout.Dock = System.Windows.Forms.DockStyle.Fill;
this.moduleDataLayout.Location = new System.Drawing.Point(0, 141);
this.moduleDataLayout.Name = "moduleDataLayout";
this.moduleDataLayout.Root = this.layoutControlGroup1;
this.moduleDataLayout.Size = new System.Drawing.Size(1226, 621);
this.moduleDataLayout.TabIndex = 1;
this.moduleDataLayout.Text = "moduleDataLayout";
//
// AddressLabelLine2
//
this.AddressLabelLine2.Appearance.Font = new System.Drawing.Font("Segoe UI", 11F);
this.AddressLabelLine2.Appearance.Options.UseFont = true;
this.AddressLabelLine2.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bindingSource, "AddressLine2", true));
this.AddressLabelLine2.Location = new System.Drawing.Point(957, 62);
this.AddressLabelLine2.Name = "AddressLabelLine2";
this.AddressLabelLine2.Size = new System.Drawing.Size(253, 20);
this.AddressLabelLine2.StyleController = this.moduleDataLayout;
this.AddressLabelLine2.TabIndex = 33;
//
// swapRouteButtons
//
this.swapRouteButtons.AllowGlyphSkinning = false;
this.swapRouteButtons.Buttons.AddRange(new DevExpress.XtraEditors.ButtonPanel.IBaseButton[] {
new DevExpress.XtraBars.Docking2010.WindowsUIButton("Driving", global::DevExpress.DevAV.Properties.Resources.icon_revert_direction_14, -1, DevExpress.XtraBars.Docking2010.ImageLocation.Default, DevExpress.XtraBars.Docking2010.ButtonStyle.PushButton, "", false, -1, true, null, true, false, true, null, null, -1, false, false)});
this.swapRouteButtons.ContentAlignment = System.Drawing.ContentAlignment.MiddleRight;
this.swapRouteButtons.Location = new System.Drawing.Point(870, 196);
this.swapRouteButtons.Name = "swapRouteButtons";
this.swapRouteButtons.Size = new System.Drawing.Size(340, 14);
this.swapRouteButtons.TabIndex = 31;
this.swapRouteButtons.UseButtonBackgroundImages = false;
//
// routeButtons
//
this.routeButtons.AllowGlyphSkinning = false;
this.routeButtons.Buttons.AddRange(new DevExpress.XtraEditors.ButtonPanel.IBaseButton[] {
new DevExpress.XtraBars.Docking2010.WindowsUIButton("Walking", global::DevExpress.DevAV.Properties.Resources.icon_walking_14, -1, DevExpress.XtraBars.Docking2010.ImageLocation.Default, DevExpress.XtraBars.Docking2010.ButtonStyle.PushButton, "", false, -1, true, null, true, false, true, null, null, -1, false, false),
new DevExpress.XtraBars.Docking2010.WindowsUIButton("Driving", global::DevExpress.DevAV.Properties.Resources.icon_driving_14, -1, DevExpress.XtraBars.Docking2010.ImageLocation.Default, DevExpress.XtraBars.Docking2010.ButtonStyle.PushButton, "", false, -1, true, null, true, false, true, null, null, -1, false, false)});
this.routeButtons.ContentAlignment = System.Drawing.ContentAlignment.MiddleRight;
this.routeButtons.Location = new System.Drawing.Point(870, 150);
this.routeButtons.Name = "routeButtons";
this.routeButtons.Size = new System.Drawing.Size(340, 14);
this.routeButtons.TabIndex = 30;
this.routeButtons.UseButtonBackgroundImages = false;
//
// editPointB
//
this.editPointB.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bindingSource, "PointBAddress", true));
this.editPointB.Location = new System.Drawing.Point(870, 210);
this.editPointB.MinimumSize = new System.Drawing.Size(340, 0);
this.editPointB.Name = "editPointB";
this.editPointB.Properties.Appearance.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.editPointB.Properties.Appearance.Options.UseFont = true;
this.editPointB.Size = new System.Drawing.Size(340, 28);
this.editPointB.StyleController = this.moduleDataLayout;
this.editPointB.TabIndex = 24;
//
// editPointA
//
this.editPointA.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bindingSource, "PointAAddress", true));
this.editPointA.Location = new System.Drawing.Point(870, 168);
this.editPointA.Name = "editPointA";
this.editPointA.Properties.Appearance.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.editPointA.Properties.Appearance.Options.UseFont = true;
this.editPointA.Size = new System.Drawing.Size(340, 28);
this.editPointA.StyleController = this.moduleDataLayout;
this.editPointA.TabIndex = 21;
//
// mapControl
//
this.mapControl.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder;
this.mapControl.Layers.Add(this.imageTilesLayer1);
this.mapControl.Layers.Add(this.informationLayer1);
this.mapControl.Layers.Add(this.informationLayer2);
this.mapControl.Layers.Add(this.informationLayer3);
this.mapControl.Location = new System.Drawing.Point(0, 0);
this.mapControl.Name = "mapControl";
this.mapControl.ShowSearchPanel = false;
this.mapControl.Size = new System.Drawing.Size(819, 621);
this.mapControl.TabIndex = 18;
this.mapControl.ZoomLevel = 8D;
//
// FullNameLabel
//
this.FullNameLabel.Appearance.Font = new System.Drawing.Font("Segoe UI", 18F);
this.FullNameLabel.Appearance.Options.UseFont = true;
this.FullNameLabel.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bindingSource, "FullName", true));
this.FullNameLabel.Location = new System.Drawing.Point(955, 8);
this.FullNameLabel.Name = "FullNameLabel";
this.FullNameLabel.Size = new System.Drawing.Size(257, 32);
this.FullNameLabel.StyleController = this.moduleDataLayout;
this.FullNameLabel.TabIndex = 8;
//
// AddressLabelLine1
//
this.AddressLabelLine1.Appearance.Font = new System.Drawing.Font("Segoe UI", 11F);
this.AddressLabelLine1.Appearance.Options.UseFont = true;
this.AddressLabelLine1.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bindingSource, "AddressLine1", true));
this.AddressLabelLine1.Location = new System.Drawing.Point(955, 40);
this.AddressLabelLine1.Name = "AddressLabelLine1";
this.AddressLabelLine1.Size = new System.Drawing.Size(257, 20);
this.AddressLabelLine1.StyleController = this.moduleDataLayout;
this.AddressLabelLine1.TabIndex = 8;
//
// PhotoPictureEdit
//
this.PhotoPictureEdit.Cursor = System.Windows.Forms.Cursors.Default;
this.PhotoPictureEdit.DataBindings.Add(new System.Windows.Forms.Binding("EditValue", this.bindingSource, "Picture", true));
this.PhotoPictureEdit.Location = new System.Drawing.Point(835, 8);
this.PhotoPictureEdit.MenuManager = this.ribbonControl;
this.PhotoPictureEdit.Name = "PhotoPictureEdit";
this.PhotoPictureEdit.Properties.ReadOnly = true;
this.PhotoPictureEdit.Properties.SizeMode = DevExpress.XtraEditors.Controls.PictureSizeMode.Zoom;
this.PhotoPictureEdit.Properties.ZoomAccelerationFactor = 1D;
this.PhotoPictureEdit.Size = new System.Drawing.Size(108, 120);
this.PhotoPictureEdit.StyleController = this.moduleDataLayout;
this.PhotoPictureEdit.TabIndex = 17;
//
// layoutControlGroup1
//
this.layoutControlGroup1.CustomizationFormText = "Root";
this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.False;
this.layoutControlGroup1.GroupBordersVisible = false;
this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
this.ItemForMap,
this.layoutControlGroup3,
this.layoutControlGroup4,
this.simpleSeparator1,
this.simpleSeparator2});
this.layoutControlGroup1.Location = new System.Drawing.Point(0, 0);
this.layoutControlGroup1.Name = "Root";
this.layoutControlGroup1.OptionsItemText.TextToControlDistance = 6;
this.layoutControlGroup1.Size = new System.Drawing.Size(1226, 621);
this.layoutControlGroup1.TextVisible = false;
//
// ItemForMap
//
this.ItemForMap.Control = this.mapControl;
this.ItemForMap.CustomizationFormText = "ItemForMap";
this.ItemForMap.Location = new System.Drawing.Point(0, 0);
this.ItemForMap.Name = "ItemForMap";
this.ItemForMap.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0);
this.ItemForMap.Size = new System.Drawing.Size(819, 621);
this.ItemForMap.Text = "map";
this.ItemForMap.TextSize = new System.Drawing.Size(0, 0);
this.ItemForMap.TextVisible = false;
//
// layoutControlGroup3
//
this.layoutControlGroup3.CustomizationFormText = "layoutControlGroup3";
this.layoutControlGroup3.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True;
this.layoutControlGroup3.GroupBordersVisible = false;
this.layoutControlGroup3.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
this.ItemForPointB,
this.ItemForPointA,
this.ItemForRoutePanel,
this.ItemForRouteButtons,
this.ItemForSwapButton});
this.layoutControlGroup3.Location = new System.Drawing.Point(821, 140);
this.layoutControlGroup3.Name = "layoutControlGroup3";
this.layoutControlGroup3.Padding = new DevExpress.XtraLayout.Utils.Padding(12, 12, 8, 8);
this.layoutControlGroup3.Size = new System.Drawing.Size(405, 481);
this.layoutControlGroup3.Spacing = new DevExpress.XtraLayout.Utils.Padding(2, 2, 2, 0);
this.layoutControlGroup3.TextVisible = false;
//
// ItemForPointB
//
this.ItemForPointB.Control = this.editPointB;
this.ItemForPointB.ControlAlignment = System.Drawing.ContentAlignment.MiddleLeft;
this.ItemForPointB.CustomizationFormText = "B";
this.ItemForPointB.Image = global::DevExpress.DevAV.Properties.Resources.icon_B_24;
this.ItemForPointB.ImageToTextDistance = 0;
this.ItemForPointB.Location = new System.Drawing.Point(0, 60);
this.ItemForPointB.Name = "ItemForPointB";
this.ItemForPointB.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 0, 2);
this.ItemForPointB.Size = new System.Drawing.Size(377, 30);
this.ItemForPointB.Text = " ";
this.ItemForPointB.TextSize = new System.Drawing.Size(27, 24);
//
// ItemForPointA
//
this.ItemForPointA.Control = this.editPointA;
this.ItemForPointA.ControlAlignment = System.Drawing.ContentAlignment.BottomLeft;
this.ItemForPointA.CustomizationFormText = "A";
this.ItemForPointA.Image = global::DevExpress.DevAV.Properties.Resources.icon_A_24;
this.ItemForPointA.ImageToTextDistance = 0;
this.ItemForPointA.Location = new System.Drawing.Point(0, 16);
this.ItemForPointA.Name = "ItemForPointA";
this.ItemForPointA.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 2, 0);
this.ItemForPointA.Size = new System.Drawing.Size(377, 30);
this.ItemForPointA.Text = " ";
this.ItemForPointA.TextSize = new System.Drawing.Size(27, 24);
//
// ItemForRoutePanel
//
this.ItemForRoutePanel.Control = this.routePanel;
this.ItemForRoutePanel.CustomizationFormText = " ";
this.ItemForRoutePanel.Location = new System.Drawing.Point(0, 90);
this.ItemForRoutePanel.Name = "ItemForRoutePanel";
this.ItemForRoutePanel.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 12, 2);
this.ItemForRoutePanel.Size = new System.Drawing.Size(377, 373);
this.ItemForRoutePanel.Text = " ";
this.ItemForRoutePanel.TextSize = new System.Drawing.Size(27, 13);
//
// ItemForRouteButtons
//
this.ItemForRouteButtons.Control = this.routeButtons;
this.ItemForRouteButtons.CustomizationFormText = " ";
this.ItemForRouteButtons.Location = new System.Drawing.Point(0, 0);
this.ItemForRouteButtons.Name = "ItemForRouteButtons";
this.ItemForRouteButtons.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 0, 2);
this.ItemForRouteButtons.Size = new System.Drawing.Size(377, 16);
this.ItemForRouteButtons.Text = " ";
this.ItemForRouteButtons.TextSize = new System.Drawing.Size(27, 13);
//
// ItemForSwapButton
//
this.ItemForSwapButton.Control = this.swapRouteButtons;
this.ItemForSwapButton.CustomizationFormText = " ";
this.ItemForSwapButton.Location = new System.Drawing.Point(0, 46);
this.ItemForSwapButton.Name = "ItemForSwapButton";
this.ItemForSwapButton.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 0, 0);
this.ItemForSwapButton.Size = new System.Drawing.Size(377, 14);
this.ItemForSwapButton.Text = " ";
this.ItemForSwapButton.TextSize = new System.Drawing.Size(27, 13);
//
// layoutControlGroup4
//
this.layoutControlGroup4.CustomizationFormText = "layoutControlGroup4";
this.layoutControlGroup4.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True;
this.layoutControlGroup4.GroupBordersVisible = false;
this.layoutControlGroup4.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
this.emptySpaceItem2,
this.ItemForPhoto,
this.ItemForAddressLine1,
this.ItemForFullName,
this.ItemForAddressLine2});
this.layoutControlGroup4.Location = new System.Drawing.Point(821, 0);
this.layoutControlGroup4.Name = "layoutControlGroup4";
this.layoutControlGroup4.Padding = new DevExpress.XtraLayout.Utils.Padding(12, 12, 8, 8);
this.layoutControlGroup4.Size = new System.Drawing.Size(405, 138);
this.layoutControlGroup4.Spacing = new DevExpress.XtraLayout.Utils.Padding(2, 2, 0, 2);
this.layoutControlGroup4.TextVisible = false;
//
// emptySpaceItem2
//
this.emptySpaceItem2.AllowHotTrack = false;
this.emptySpaceItem2.CustomizationFormText = "emptySpaceItem2";
this.emptySpaceItem2.Location = new System.Drawing.Point(120, 76);
this.emptySpaceItem2.Name = "emptySpaceItem2";
this.emptySpaceItem2.Size = new System.Drawing.Size(257, 44);
this.emptySpaceItem2.TextSize = new System.Drawing.Size(0, 0);
//
// ItemForPhoto
//
this.ItemForPhoto.Control = this.PhotoPictureEdit;
this.ItemForPhoto.CustomizationFormText = "Photo";
this.ItemForPhoto.Location = new System.Drawing.Point(0, 0);
this.ItemForPhoto.MaxSize = new System.Drawing.Size(120, 120);
this.ItemForPhoto.MinSize = new System.Drawing.Size(120, 120);
this.ItemForPhoto.Name = "ItemForPhoto";
this.ItemForPhoto.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 12, 0, 0);
this.ItemForPhoto.Size = new System.Drawing.Size(120, 120);
this.ItemForPhoto.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom;
this.ItemForPhoto.Text = "Photo";
this.ItemForPhoto.TextSize = new System.Drawing.Size(0, 0);
this.ItemForPhoto.TextVisible = false;
//
// ItemForAddressLine1
//
this.ItemForAddressLine1.Control = this.AddressLabelLine1;
this.ItemForAddressLine1.CustomizationFormText = "Address";
this.ItemForAddressLine1.Location = new System.Drawing.Point(120, 32);
this.ItemForAddressLine1.Name = "ItemForAddressLine1";
this.ItemForAddressLine1.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0);
this.ItemForAddressLine1.Size = new System.Drawing.Size(257, 20);
this.ItemForAddressLine1.Text = "Address";
this.ItemForAddressLine1.TextSize = new System.Drawing.Size(0, 0);
this.ItemForAddressLine1.TextVisible = false;
//
// ItemForFullName
//
this.ItemForFullName.Control = this.FullNameLabel;
this.ItemForFullName.CustomizationFormText = "Full Name";
this.ItemForFullName.Location = new System.Drawing.Point(120, 0);
this.ItemForFullName.Name = "ItemForFullName";
this.ItemForFullName.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0);
this.ItemForFullName.Size = new System.Drawing.Size(257, 32);
this.ItemForFullName.Text = "Full Name";
this.ItemForFullName.TextSize = new System.Drawing.Size(0, 0);
this.ItemForFullName.TextVisible = false;
//
// ItemForAddressLine2
//
this.ItemForAddressLine2.Control = this.AddressLabelLine2;
this.ItemForAddressLine2.CustomizationFormText = "Address";
this.ItemForAddressLine2.Location = new System.Drawing.Point(120, 52);
this.ItemForAddressLine2.Name = "ItemForAddressLine2";
this.ItemForAddressLine2.Size = new System.Drawing.Size(257, 24);
this.ItemForAddressLine2.Text = "Address";
this.ItemForAddressLine2.TextSize = new System.Drawing.Size(0, 0);
this.ItemForAddressLine2.TextVisible = false;
//
// simpleSeparator1
//
this.simpleSeparator1.AllowHotTrack = false;
this.simpleSeparator1.CustomizationFormText = "simpleSeparator1";
this.simpleSeparator1.Location = new System.Drawing.Point(821, 138);
this.simpleSeparator1.Name = "simpleSeparator1";
this.simpleSeparator1.Size = new System.Drawing.Size(405, 2);
//
// simpleSeparator2
//
this.simpleSeparator2.AllowHotTrack = false;
this.simpleSeparator2.CustomizationFormText = "simpleSeparator2";
this.simpleSeparator2.Location = new System.Drawing.Point(819, 0);
this.simpleSeparator2.Name = "simpleSeparator2";
this.simpleSeparator2.Size = new System.Drawing.Size(2, 621);
//
// EmployeeMapView
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.moduleDataLayout);
this.Controls.Add(this.ribbonControl);
this.Name = "EmployeeMapView";
this.Size = new System.Drawing.Size(1226, 762);
((System.ComponentModel.ISupportInitialize)(this.mvvmContext)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.routePanel)).EndInit();
this.routePanel.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.gridControl)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSourceRoute)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.advBandedGridView1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.repositoryItemMemoEdit1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.ribbonControl)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSource)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.moduleDataLayout)).EndInit();
this.moduleDataLayout.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.editPointB.Properties)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.editPointA.Properties)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.mapControl)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.PhotoPictureEdit.Properties)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.ItemForMap)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup3)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.ItemForPointB)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.ItemForPointA)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.ItemForRoutePanel)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.ItemForRouteButtons)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.ItemForSwapButton)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup4)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem2)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.ItemForPhoto)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.ItemForAddressLine1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.ItemForFullName)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.ItemForAddressLine2)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.simpleSeparator1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.simpleSeparator2)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private XtraBars.Ribbon.RibbonControl ribbonControl;
private XtraBars.BarButtonItem biSave;
private XtraBars.BarButtonItem biClose;
private XtraBars.BarButtonItem biSaveAndClose;
private XtraBars.BarButtonItem biDelete;
private XtraBars.Ribbon.RibbonPage ribbonPage1;
private XtraBars.Ribbon.RibbonPageGroup ribbonPageGroup1;
private XtraBars.Ribbon.RibbonPageGroup ribbonPageGroup2;
private XtraBars.Ribbon.RibbonPageGroup ribbonPageGroup3;
private XtraDataLayout.DataLayoutControl moduleDataLayout;
private XtraLayout.LayoutControlGroup layoutControlGroup1;
private System.Windows.Forms.BindingSource bindingSource;
private XtraEditors.LabelControl FullNameLabel;
private XtraEditors.LabelControl AddressLabelLine1;
private XtraEditors.PictureEdit PhotoPictureEdit;
private DevExpress.XtraMap.MapControl mapControl;
private DevExpress.XtraEditors.TextEdit editPointB;
private DevExpress.XtraEditors.TextEdit editPointA;
private XtraGrid.GridControl gridControl;
private XtraBars.BarCheckItem biDriving;
private XtraBars.BarCheckItem biWalking;
private XtraBars.Ribbon.RibbonPageGroup ribbonPageGroup4;
private XtraEditors.LabelControl routeResultLabel;
private System.Windows.Forms.BindingSource bindingSourceRoute;
private DevExpress.XtraBars.Docking2010.WindowsUIButtonPanel routeButtons;
private XtraBars.BarButtonItem biPrint;
private XtraBars.BarButtonItem biPrintPreview;
private XtraBars.BarButtonItem barExportItem;
private XtraBars.Ribbon.RibbonPageGroup ribbonPageGroup5;
private XtraEditors.Repository.RepositoryItemMemoEdit repositoryItemMemoEdit1;
private XtraGrid.Views.BandedGrid.AdvBandedGridView advBandedGridView1;
private XtraGrid.Views.BandedGrid.BandedGridColumn colManeuver;
private XtraGrid.Views.BandedGrid.BandedGridColumn colManeuverInstruction;
private XtraGrid.Views.BandedGrid.BandedGridColumn colDistance;
private XtraGrid.Views.BandedGrid.GridBand gridBand1;
private XtraGrid.Views.BandedGrid.GridBand gridBand2;
private XtraBars.Docking2010.WindowsUIButtonPanel swapRouteButtons;
private XtraEditors.PanelControl routePanel;
private XtraLayout.LayoutControlItem ItemForMap;
private XtraLayout.LayoutControlGroup layoutControlGroup3;
private XtraLayout.LayoutControlItem ItemForPointB;
private XtraLayout.LayoutControlItem ItemForPointA;
private XtraLayout.LayoutControlItem ItemForRoutePanel;
private XtraLayout.LayoutControlItem ItemForRouteButtons;
private XtraLayout.LayoutControlItem ItemForSwapButton;
private XtraLayout.LayoutControlGroup layoutControlGroup4;
private XtraLayout.EmptySpaceItem emptySpaceItem2;
private XtraLayout.LayoutControlItem ItemForPhoto;
private XtraLayout.LayoutControlItem ItemForAddressLine1;
private XtraLayout.LayoutControlItem ItemForFullName;
private XtraLayout.SimpleSeparator simpleSeparator1;
private XtraLayout.SimpleSeparator simpleSeparator2;
private XtraEditors.LabelControl AddressLabelLine2;
private XtraLayout.LayoutControlItem ItemForAddressLine2;
private XtraMap.ImageLayer imageTilesLayer1;
private XtraMap.BingMapDataProvider bingMapDataProvider1;
private XtraMap.InformationLayer informationLayer1;
private XtraMap.BingGeocodeDataProvider bingGeocodeDataProvider1;
private XtraMap.InformationLayer informationLayer2;
private XtraMap.BingSearchDataProvider bingSearchDataProvider1;
private XtraMap.InformationLayer informationLayer3;
private XtraMap.BingRouteDataProvider bingRouteDataProvider1;
}
}

View File

@@ -0,0 +1,75 @@
namespace DevExpress.DevAV.Modules {
using System;
using System.Collections.Generic;
using DevExpress.DevAV;
using DevExpress.DevAV.Presenters;
using DevExpress.DevAV.ViewModels;
using DevExpress.XtraBars.Docking2010;
public partial class EmployeeMapView : BaseModuleControl, IRibbonModule {
public EmployeeMapView()
: base(typeof(EmployeeMapViewModel)) {
InitializeComponent();
//
Presenter = CreatePresenter();
//
BindCommands();
BindEditors();
UpdateColors();
LookAndFeel.StyleChanged += LookAndFeel_StyleChanged;
}
protected override void OnDisposing() {
LookAndFeel.StyleChanged -= LookAndFeel_StyleChanged;
Presenter.Dispose();
base.OnDisposing();
}
public EmployeeMapViewModel ViewModel {
get { return GetViewModel<EmployeeMapViewModel>(); }
}
protected EmployeeRouteMapPresenter Presenter { get; private set; }
protected virtual EmployeeRouteMapPresenter CreatePresenter() {
return new EmployeeRouteMapPresenter(mapControl, ViewModel, UpdateUI, UpdateRouteList);
}
protected virtual void BindCommands() {
//Save & Close
biSave.BindCommand(() => ViewModel.Save(), ViewModel);
biClose.BindCommand(() => ViewModel.Close(), ViewModel);
biSaveAndClose.BindCommand(() => ViewModel.SaveAndClose(), ViewModel);
//Delete
biDelete.BindCommand(() => ViewModel.Delete(), ViewModel);
//
biDriving.BindCommand(() => ViewModel.SetDrivingTravelMode(), ViewModel);
biWalking.BindCommand(() => ViewModel.SetWalkingTravelMode(), ViewModel);
//
((WindowsUIButton)routeButtons.Buttons[0]).BindCommand(() => ViewModel.SetWalkingTravelMode(), ViewModel);
((WindowsUIButton)routeButtons.Buttons[1]).BindCommand(() => ViewModel.SetDrivingTravelMode(), ViewModel);
((WindowsUIButton)swapRouteButtons.Buttons[0]).BindCommand(() => ViewModel.SwapRoutePoints(), ViewModel);
//
biPrint.ItemClick += (s, e) => mapControl.Print();
biPrintPreview.ItemClick += (s, e) => mapControl.ShowRibbonPrintPreview();
barExportItem.ItemClick += (s, e) => mapControl.Export("Employees.Map.png");
}
protected virtual void BindEditors() {
bindingSource.DataSource = ViewModel;
colManeuver.ColumnEdit = EditorHelpers.CreateManeuverImageComboBox();
}
void LookAndFeel_StyleChanged(object sender, EventArgs e) {
UpdateColors();
}
void UpdateColors() {
routeResultLabel.Appearance.BackColor = ColorHelper.WindowColor;
routeResultLabel.Appearance.ForeColor = ColorHelper.WindowTextColor;
}
void UpdateUI(Employee employee) {
ribbonControl.ApplicationDocumentCaption = employee.FullNameBindable;
}
void UpdateRouteList(List<RoutePoint> routePoints) {
gridControl.DataSource = routePoints;
}
#region
XtraBars.Ribbon.RibbonControl IRibbonModule.Ribbon {
get { return ribbonControl; }
}
#endregion
}
}

View File

@@ -0,0 +1,132 @@
<?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>
<metadata name="mvvmContext.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="bindingSourceRoute.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>275, 17</value>
</metadata>
<metadata name="bindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>144, 17</value>
</metadata>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>52</value>
</metadata>
</root>

View File

@@ -0,0 +1,992 @@
namespace DevExpress.DevAV.Modules {
partial class EmployeeView {
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing) {
if(disposing && (components != null)) {
components.Dispose();
}
base.Dispose(disposing);
}
#region Component Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent() {
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(EmployeeView));
DevExpress.XtraEditors.TableLayout.TableColumnDefinition tableColumnDefinition1 = new DevExpress.XtraEditors.TableLayout.TableColumnDefinition();
DevExpress.XtraEditors.TableLayout.TableColumnDefinition tableColumnDefinition2 = new DevExpress.XtraEditors.TableLayout.TableColumnDefinition();
DevExpress.XtraEditors.TableLayout.TableColumnDefinition tableColumnDefinition3 = new DevExpress.XtraEditors.TableLayout.TableColumnDefinition();
DevExpress.XtraEditors.TableLayout.TableColumnDefinition tableColumnDefinition4 = new DevExpress.XtraEditors.TableLayout.TableColumnDefinition();
DevExpress.XtraEditors.TableLayout.TableRowDefinition tableRowDefinition1 = new DevExpress.XtraEditors.TableLayout.TableRowDefinition();
DevExpress.XtraEditors.TableLayout.TableRowDefinition tableRowDefinition2 = new DevExpress.XtraEditors.TableLayout.TableRowDefinition();
DevExpress.XtraEditors.TableLayout.TableRowDefinition tableRowDefinition3 = new DevExpress.XtraEditors.TableLayout.TableRowDefinition();
DevExpress.XtraEditors.TableLayout.TableRowDefinition tableRowDefinition4 = new DevExpress.XtraEditors.TableLayout.TableRowDefinition();
DevExpress.XtraEditors.TableLayout.TableSpan tableSpan1 = new DevExpress.XtraEditors.TableLayout.TableSpan();
DevExpress.XtraEditors.TableLayout.TableSpan tableSpan2 = new DevExpress.XtraEditors.TableLayout.TableSpan();
DevExpress.XtraEditors.TableLayout.TableSpan tableSpan3 = new DevExpress.XtraEditors.TableLayout.TableSpan();
DevExpress.XtraEditors.TableLayout.TableSpan tableSpan4 = new DevExpress.XtraEditors.TableLayout.TableSpan();
DevExpress.XtraGrid.Views.Tile.TileViewItemElement tileViewItemElement1 = new DevExpress.XtraGrid.Views.Tile.TileViewItemElement();
DevExpress.XtraGrid.Views.Tile.TileViewItemElement tileViewItemElement2 = new DevExpress.XtraGrid.Views.Tile.TileViewItemElement();
DevExpress.XtraGrid.Views.Tile.TileViewItemElement tileViewItemElement3 = new DevExpress.XtraGrid.Views.Tile.TileViewItemElement();
DevExpress.XtraGrid.Views.Tile.TileViewItemElement tileViewItemElement4 = new DevExpress.XtraGrid.Views.Tile.TileViewItemElement();
DevExpress.XtraGrid.Views.Tile.TileViewItemElement tileViewItemElement5 = new DevExpress.XtraGrid.Views.Tile.TileViewItemElement();
DevExpress.XtraGrid.Views.Tile.TileViewItemElement tileViewItemElement6 = new DevExpress.XtraGrid.Views.Tile.TileViewItemElement();
DevExpress.XtraGrid.Views.Tile.TileViewItemElement tileViewItemElement7 = new DevExpress.XtraGrid.Views.Tile.TileViewItemElement();
DevExpress.XtraGrid.Views.Tile.TileViewItemElement tileViewItemElement8 = new DevExpress.XtraGrid.Views.Tile.TileViewItemElement();
DevExpress.XtraEditors.TableLayout.TableColumnDefinition tableColumnDefinition5 = new DevExpress.XtraEditors.TableLayout.TableColumnDefinition();
DevExpress.XtraEditors.TableLayout.TableColumnDefinition tableColumnDefinition6 = new DevExpress.XtraEditors.TableLayout.TableColumnDefinition();
DevExpress.XtraEditors.TableLayout.TableColumnDefinition tableColumnDefinition7 = new DevExpress.XtraEditors.TableLayout.TableColumnDefinition();
DevExpress.XtraEditors.TableLayout.TableRowDefinition tableRowDefinition5 = new DevExpress.XtraEditors.TableLayout.TableRowDefinition();
DevExpress.XtraEditors.TableLayout.TableRowDefinition tableRowDefinition6 = new DevExpress.XtraEditors.TableLayout.TableRowDefinition();
DevExpress.XtraEditors.TableLayout.TableRowDefinition tableRowDefinition7 = new DevExpress.XtraEditors.TableLayout.TableRowDefinition();
DevExpress.XtraEditors.TableLayout.TableRowDefinition tableRowDefinition8 = new DevExpress.XtraEditors.TableLayout.TableRowDefinition();
DevExpress.XtraEditors.TableLayout.TableRowDefinition tableRowDefinition9 = new DevExpress.XtraEditors.TableLayout.TableRowDefinition();
DevExpress.XtraEditors.TableLayout.TableSpan tableSpan5 = new DevExpress.XtraEditors.TableLayout.TableSpan();
DevExpress.XtraEditors.TableLayout.TableSpan tableSpan6 = new DevExpress.XtraEditors.TableLayout.TableSpan();
DevExpress.XtraEditors.TableLayout.TableSpan tableSpan7 = new DevExpress.XtraEditors.TableLayout.TableSpan();
DevExpress.XtraEditors.TableLayout.TableSpan tableSpan8 = new DevExpress.XtraEditors.TableLayout.TableSpan();
DevExpress.XtraGrid.Views.Tile.TileViewItemElement tileViewItemElement9 = new DevExpress.XtraGrid.Views.Tile.TileViewItemElement();
DevExpress.XtraGrid.Views.Tile.TileViewItemElement tileViewItemElement10 = new DevExpress.XtraGrid.Views.Tile.TileViewItemElement();
DevExpress.XtraGrid.Views.Tile.TileViewItemElement tileViewItemElement11 = new DevExpress.XtraGrid.Views.Tile.TileViewItemElement();
DevExpress.XtraGrid.Views.Tile.TileViewItemElement tileViewItemElement12 = new DevExpress.XtraGrid.Views.Tile.TileViewItemElement();
DevExpress.XtraGrid.Views.Tile.TileViewItemElement tileViewItemElement13 = new DevExpress.XtraGrid.Views.Tile.TileViewItemElement();
DevExpress.XtraGrid.Views.Tile.TileViewItemElement tileViewItemElement14 = new DevExpress.XtraGrid.Views.Tile.TileViewItemElement();
DevExpress.XtraGrid.Views.Tile.TileViewItemElement tileViewItemElement15 = new DevExpress.XtraGrid.Views.Tile.TileViewItemElement();
DevExpress.XtraGrid.Views.Tile.TileViewItemElement tileViewItemElement16 = new DevExpress.XtraGrid.Views.Tile.TileViewItemElement();
DevExpress.XtraGrid.Views.Tile.TileViewItemElement tileViewItemElement17 = new DevExpress.XtraGrid.Views.Tile.TileViewItemElement();
DevExpress.XtraBars.Docking2010.WindowsUIButtonImageOptions windowsUIButtonImageOptions1 = new DevExpress.XtraBars.Docking2010.WindowsUIButtonImageOptions();
DevExpress.XtraBars.Docking2010.WindowsUIButtonImageOptions windowsUIButtonImageOptions2 = new DevExpress.XtraBars.Docking2010.WindowsUIButtonImageOptions();
DevExpress.XtraBars.Docking2010.WindowsUIButtonImageOptions windowsUIButtonImageOptions3 = new DevExpress.XtraBars.Docking2010.WindowsUIButtonImageOptions();
DevExpress.XtraBars.Docking2010.WindowsUIButtonImageOptions windowsUIButtonImageOptions4 = new DevExpress.XtraBars.Docking2010.WindowsUIButtonImageOptions();
this.tileViewColumn3 = new DevExpress.XtraGrid.Columns.TileViewColumn();
this.tileViewColumn2 = new DevExpress.XtraGrid.Columns.TileViewColumn();
this.tileViewColumn1 = new DevExpress.XtraGrid.Columns.TileViewColumn();
this.tileViewColumn4 = new DevExpress.XtraGrid.Columns.TileViewColumn();
this.tileViewColumn5 = new DevExpress.XtraGrid.Columns.TileViewColumn();
this.repositoryItemDateEdit1 = new DevExpress.XtraEditors.Repository.RepositoryItemDateEdit();
this.tileViewColumn6 = new DevExpress.XtraGrid.Columns.TileViewColumn();
this.tileViewColumn7 = new DevExpress.XtraGrid.Columns.TileViewColumn();
this.tileViewColumn8 = new DevExpress.XtraGrid.Columns.TileViewColumn();
this.images = new DevExpress.Utils.ImageCollection(this.components);
this.pictureEdit = new DevExpress.XtraEditors.PictureEdit();
this.bindingSource = new System.Windows.Forms.BindingSource(this.components);
this.modueLayout = new DevExpress.XtraLayout.LayoutControl();
this.officeTabFilter = new DevExpress.XtraBars.Navigation.OfficeNavigationBar();
this.navigationItemEvaluations = new DevExpress.XtraBars.Navigation.NavigationBarItem();
this.navigationItemTasks = new DevExpress.XtraBars.Navigation.NavigationBarItem();
this.gcEvaluations = new DevExpress.XtraGrid.GridControl();
this.tvEvaluations = new DevExpress.XtraGrid.Views.Tile.TileView();
this.gvEvaluations = new DevExpress.DevAV.TaskPreviewGridView();
this.colCreatedOn = new DevExpress.XtraGrid.Columns.GridColumn();
this.colSubject1 = new DevExpress.XtraGrid.Columns.GridColumn();
this.colCreatedBy = new DevExpress.XtraGrid.Columns.GridColumn();
this.gcTasks = new DevExpress.XtraGrid.GridControl();
this.tvTasks = new DevExpress.XtraGrid.Views.Tile.TileView();
this.tileViewColumn9 = new DevExpress.XtraGrid.Columns.TileViewColumn();
this.gvTasks = new DevExpress.DevAV.TaskPreviewGridView();
this.colDueDate = new DevExpress.XtraGrid.Columns.GridColumn();
this.colSubject = new DevExpress.XtraGrid.Columns.GridColumn();
this.colDescription = new DevExpress.XtraGrid.Columns.GridColumn();
this.buttonPanel = new DevExpress.XtraBars.Docking2010.WindowsUIButtonPanel();
this.buttonImages = new System.Windows.Forms.ImageList(this.components);
this.layoutControlGroup1 = new DevExpress.XtraLayout.LayoutControlGroup();
this.ItemForPhoto = new DevExpress.XtraLayout.LayoutControlItem();
this.simpleSeparator1 = new DevExpress.XtraLayout.SimpleSeparator();
this.emptySpaceItem2 = new DevExpress.XtraLayout.EmptySpaceItem();
this.lciTasks = new DevExpress.XtraLayout.LayoutControlItem();
this.layoutControlGroup2 = new DevExpress.XtraLayout.LayoutControlGroup();
this.sliName = new DevExpress.XtraLayout.SimpleLabelItem();
this.sliTitle = new DevExpress.XtraLayout.SimpleLabelItem();
this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem();
this.emptySpaceItem3 = new DevExpress.XtraLayout.EmptySpaceItem();
this.lciEvaluations = new DevExpress.XtraLayout.LayoutControlItem();
this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem();
((System.ComponentModel.ISupportInitialize)(this.mvvmContext)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.repositoryItemDateEdit1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.repositoryItemDateEdit1.CalendarTimeProperties)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.images)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.pictureEdit.Properties)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSource)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.modueLayout)).BeginInit();
this.modueLayout.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.officeTabFilter)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.gcEvaluations)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.tvEvaluations)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.gvEvaluations)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.gcTasks)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.tvTasks)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.gvTasks)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.ItemForPhoto)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.simpleSeparator1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem2)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.lciTasks)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.sliName)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.sliTitle)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem3)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.lciEvaluations)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit();
this.SuspendLayout();
//
// tileViewColumn3
//
this.tileViewColumn3.Caption = "MANAGER";
this.tileViewColumn3.FieldName = "CreatedBy";
this.tileViewColumn3.Name = "tileViewColumn3";
this.tileViewColumn3.OptionsColumn.AllowEdit = false;
this.tileViewColumn3.OptionsColumn.AllowFocus = false;
this.tileViewColumn3.Visible = true;
this.tileViewColumn3.VisibleIndex = 2;
this.tileViewColumn3.Width = 228;
//
// tileViewColumn2
//
this.tileViewColumn2.Caption = "SUBJECT";
this.tileViewColumn2.FieldName = "Subject";
this.tileViewColumn2.Name = "tileViewColumn2";
this.tileViewColumn2.OptionsColumn.AllowEdit = false;
this.tileViewColumn2.OptionsColumn.AllowFocus = false;
this.tileViewColumn2.Visible = true;
this.tileViewColumn2.VisibleIndex = 1;
this.tileViewColumn2.Width = 238;
//
// tileViewColumn1
//
this.tileViewColumn1.AppearanceCell.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Bold);
this.tileViewColumn1.AppearanceCell.Options.UseFont = true;
this.tileViewColumn1.Caption = "CREATED ON";
this.tileViewColumn1.FieldName = "CreatedOn";
this.tileViewColumn1.Name = "tileViewColumn1";
this.tileViewColumn1.OptionsColumn.AllowEdit = false;
this.tileViewColumn1.OptionsColumn.AllowFocus = false;
this.tileViewColumn1.Visible = true;
this.tileViewColumn1.VisibleIndex = 0;
this.tileViewColumn1.Width = 90;
//
// tileViewColumn4
//
this.tileViewColumn4.Caption = "DETAILS";
this.tileViewColumn4.FieldName = "Details";
this.tileViewColumn4.Name = "tileViewColumn4";
this.tileViewColumn4.Visible = true;
this.tileViewColumn4.VisibleIndex = 3;
//
// tileViewColumn5
//
this.tileViewColumn5.AppearanceCell.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Bold);
this.tileViewColumn5.AppearanceCell.Options.UseFont = true;
this.tileViewColumn5.Caption = "DueDate";
this.tileViewColumn5.ColumnEdit = this.repositoryItemDateEdit1;
this.tileViewColumn5.FieldName = "DueDate";
this.tileViewColumn5.Name = "tileViewColumn5";
this.tileViewColumn5.OptionsColumn.AllowEdit = false;
this.tileViewColumn5.OptionsColumn.AllowFocus = false;
this.tileViewColumn5.Visible = true;
this.tileViewColumn5.VisibleIndex = 0;
this.tileViewColumn5.Width = 116;
//
// repositoryItemDateEdit1
//
this.repositoryItemDateEdit1.AutoHeight = false;
this.repositoryItemDateEdit1.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
this.repositoryItemDateEdit1.CalendarTimeProperties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
this.repositoryItemDateEdit1.DisplayFormat.FormatString = "dd MMM yyyy";
this.repositoryItemDateEdit1.DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime;
this.repositoryItemDateEdit1.Name = "repositoryItemDateEdit1";
//
// tileViewColumn6
//
this.tileViewColumn6.Caption = "Subject";
this.tileViewColumn6.FieldName = "Subject";
this.tileViewColumn6.Name = "tileViewColumn6";
this.tileViewColumn6.OptionsColumn.AllowEdit = false;
this.tileViewColumn6.OptionsColumn.AllowFocus = false;
this.tileViewColumn6.Visible = true;
this.tileViewColumn6.VisibleIndex = 1;
this.tileViewColumn6.Width = 221;
//
// tileViewColumn7
//
this.tileViewColumn7.Caption = "Description";
this.tileViewColumn7.FieldName = "Description";
this.tileViewColumn7.Name = "tileViewColumn7";
this.tileViewColumn7.OptionsColumn.AllowEdit = false;
this.tileViewColumn7.OptionsColumn.AllowFocus = false;
this.tileViewColumn7.OptionsColumn.ShowInCustomizationForm = false;
this.tileViewColumn7.OptionsFilter.AllowFilter = false;
this.tileViewColumn7.Visible = true;
this.tileViewColumn7.VisibleIndex = 2;
this.tileViewColumn7.Width = 504;
//
// tileViewColumn8
//
this.tileViewColumn8.Caption = "Completion";
this.tileViewColumn8.FieldName = "Completion";
this.tileViewColumn8.Name = "tileViewColumn8";
this.tileViewColumn8.Visible = true;
this.tileViewColumn8.VisibleIndex = 3;
//
// images
//
//this.images.ImageStream = ((DevExpress.Utils.ImageCollectionStreamer)(resources.GetObject("images.ImageStream")));
this.images.TransparentColor = System.Drawing.Color.Transparent;
this.images.InsertImage(global::DevExpress.DevAV.Properties.Resources.glyph_message_16, "glyph_message_16", typeof(global::DevExpress.DevAV.Properties.Resources), 0);
this.images.Images.SetKeyName(0, "glyph_message_16");
this.images.InsertImage(global::DevExpress.DevAV.Properties.Resources.glyph_phone_16, "glyph_phone_16", typeof(global::DevExpress.DevAV.Properties.Resources), 1);
this.images.Images.SetKeyName(1, "glyph_phone_16");
this.images.InsertImage(global::DevExpress.DevAV.Properties.Resources.glyph_video_16, "glyph_video_16", typeof(global::DevExpress.DevAV.Properties.Resources), 2);
this.images.Images.SetKeyName(2, "glyph_video_16");
this.images.InsertImage(global::DevExpress.DevAV.Properties.Resources.glyph_mail_16, "glyph_mail_16", typeof(global::DevExpress.DevAV.Properties.Resources), 3);
this.images.Images.SetKeyName(3, "glyph_mail_16");
//
// pictureEdit
//
this.pictureEdit.Cursor = System.Windows.Forms.Cursors.Default;
this.pictureEdit.DataBindings.Add(new System.Windows.Forms.Binding("EditValue", this.bindingSource, "Photo", true));
this.pictureEdit.Location = new System.Drawing.Point(0, 0);
this.pictureEdit.Name = "pictureEdit";
this.pictureEdit.Properties.AllowAnimationOnValueChanged = DevExpress.Utils.DefaultBoolean.True;
this.pictureEdit.Properties.AllowFocused = false;
this.pictureEdit.Properties.PictureInterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
this.pictureEdit.Properties.ReadOnly = true;
this.pictureEdit.Properties.ShowMenu = false;
this.pictureEdit.Properties.SizeMode = DevExpress.XtraEditors.Controls.PictureSizeMode.Squeeze;
this.pictureEdit.Size = new System.Drawing.Size(130, 130);
this.pictureEdit.StyleController = this.modueLayout;
this.pictureEdit.TabIndex = 0;
//
// bindingSource
//
this.bindingSource.DataSource = typeof(DevExpress.DevAV.Employee);
//
// modueLayout
//
this.modueLayout.Controls.Add(this.officeTabFilter);
this.modueLayout.Controls.Add(this.gcEvaluations);
this.modueLayout.Controls.Add(this.gcTasks);
this.modueLayout.Controls.Add(this.buttonPanel);
this.modueLayout.Controls.Add(this.pictureEdit);
this.modueLayout.Dock = System.Windows.Forms.DockStyle.Fill;
this.modueLayout.Location = new System.Drawing.Point(0, 0);
this.modueLayout.Name = "modueLayout";
this.modueLayout.OptionsView.UseParentAutoScaleFactor = true;
this.modueLayout.Root = this.layoutControlGroup1;
this.modueLayout.Size = new System.Drawing.Size(578, 593);
this.modueLayout.TabIndex = 1;
this.modueLayout.Text = "modueLayout";
//
// officeTabFilter
//
this.officeTabFilter.AnimateItemPressing = false;
this.officeTabFilter.AppearanceItem.Normal.Font = new System.Drawing.Font("Segoe UI", 10.25F);
this.officeTabFilter.AppearanceItem.Normal.Options.UseFont = true;
this.officeTabFilter.AutoSize = false;
this.officeTabFilter.BackColor = System.Drawing.Color.Transparent;
this.officeTabFilter.CustomizationButtonVisibility = DevExpress.XtraBars.Navigation.CustomizationButtonVisibility.Hidden;
this.officeTabFilter.HorizontalContentAlignment = DevExpress.Utils.HorzAlignment.Far;
this.officeTabFilter.ItemPadding = new System.Windows.Forms.Padding(12, 8, 0, 4);
this.officeTabFilter.Items.AddRange(new DevExpress.XtraBars.Navigation.NavigationBarItem[] {
this.navigationItemEvaluations,
this.navigationItemTasks});
this.officeTabFilter.Location = new System.Drawing.Point(2, 150);
this.officeTabFilter.Name = "officeTabFilter";
this.officeTabFilter.SelectedItem = this.navigationItemEvaluations;
this.officeTabFilter.Size = new System.Drawing.Size(574, 31);
this.officeTabFilter.TabIndex = 10;
this.officeTabFilter.ViewMode = DevExpress.XtraBars.Navigation.OfficeNavigationBarViewMode.Tab;
//
// navigationItemEvaluations
//
this.navigationItemEvaluations.Name = "navigationItemEvaluations";
this.navigationItemEvaluations.Text = "EVALUATIONS";
//
// navigationItemTasks
//
this.navigationItemTasks.Name = "navigationItemTasks";
this.navigationItemTasks.Text = "TASKS";
//
// gcEvaluations
//
this.gcEvaluations.Location = new System.Drawing.Point(289, 185);
this.gcEvaluations.MainView = this.tvEvaluations;
this.gcEvaluations.Name = "gcEvaluations";
this.gcEvaluations.Size = new System.Drawing.Size(289, 408);
this.gcEvaluations.TabIndex = 9;
this.gcEvaluations.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
this.tvEvaluations,
this.gvEvaluations});
//
// tvEvaluations
//
this.tvEvaluations.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.Simple;
this.tvEvaluations.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] {
this.tileViewColumn1,
this.tileViewColumn2,
this.tileViewColumn3,
this.tileViewColumn4});
this.tvEvaluations.GridControl = this.gcEvaluations;
this.tvEvaluations.Name = "tvEvaluations";
this.tvEvaluations.OptionsBehavior.AllowSmoothScrolling = true;
this.tvEvaluations.OptionsTiles.HighlightFocusedTileStyle = DevExpress.XtraGrid.Views.Tile.HighlightFocusedTileStyle.None;
this.tvEvaluations.OptionsTiles.IndentBetweenItems = 1;
this.tvEvaluations.OptionsTiles.ItemBorderVisibility = DevExpress.XtraEditors.TileItemBorderVisibility.Never;
this.tvEvaluations.OptionsTiles.ItemPadding = new System.Windows.Forms.Padding(20, 12, 0, 12);
this.tvEvaluations.OptionsTiles.ItemSize = new System.Drawing.Size(600, 130);
this.tvEvaluations.OptionsTiles.LayoutMode = DevExpress.XtraGrid.Views.Tile.TileViewLayoutMode.List;
this.tvEvaluations.OptionsTiles.Orientation = System.Windows.Forms.Orientation.Vertical;
this.tvEvaluations.OptionsTiles.Padding = new System.Windows.Forms.Padding(0);
this.tvEvaluations.OptionsTiles.ShowGroupText = false;
tableColumnDefinition1.Length.Value = 251D;
tableColumnDefinition2.Length.Value = 157D;
tableColumnDefinition2.PaddingRight = 20;
tableColumnDefinition3.Length.Type = DevExpress.XtraEditors.TableLayout.TableDefinitionLengthType.Pixel;
tableColumnDefinition3.Length.Value = 80D;
tableColumnDefinition3.PaddingRight = 10;
tableColumnDefinition4.Length.Type = DevExpress.XtraEditors.TableLayout.TableDefinitionLengthType.Pixel;
tableColumnDefinition4.Length.Value = 80D;
tableColumnDefinition4.PaddingLeft = 10;
this.tvEvaluations.TileColumns.Add(tableColumnDefinition1);
this.tvEvaluations.TileColumns.Add(tableColumnDefinition2);
this.tvEvaluations.TileColumns.Add(tableColumnDefinition3);
this.tvEvaluations.TileColumns.Add(tableColumnDefinition4);
tableRowDefinition1.Length.Value = 13D;
tableRowDefinition2.Length.Value = 18D;
tableRowDefinition3.Length.Value = 62D;
tableRowDefinition3.PaddingBottom = 8;
tableRowDefinition3.PaddingTop = 6;
tableRowDefinition4.Length.Value = 15D;
this.tvEvaluations.TileRows.Add(tableRowDefinition1);
this.tvEvaluations.TileRows.Add(tableRowDefinition2);
this.tvEvaluations.TileRows.Add(tableRowDefinition3);
this.tvEvaluations.TileRows.Add(tableRowDefinition4);
tableSpan1.RowSpan = 2;
tableSpan2.ColumnIndex = 2;
tableSpan2.RowSpan = 4;
tableSpan3.ColumnSpan = 2;
tableSpan3.RowIndex = 2;
tableSpan4.ColumnIndex = 3;
tableSpan4.RowSpan = 4;
this.tvEvaluations.TileSpans.Add(tableSpan1);
this.tvEvaluations.TileSpans.Add(tableSpan2);
this.tvEvaluations.TileSpans.Add(tableSpan3);
this.tvEvaluations.TileSpans.Add(tableSpan4);
tileViewItemElement1.Appearance.Normal.Font = new System.Drawing.Font("Segoe UI", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
tileViewItemElement1.Appearance.Normal.FontStyleDelta = System.Drawing.FontStyle.Bold;
tileViewItemElement1.Appearance.Normal.Options.UseFont = true;
tileViewItemElement1.Appearance.Normal.Options.UseTextOptions = true;
tileViewItemElement1.Appearance.Normal.TextOptions.WordWrap = DevExpress.Utils.WordWrap.NoWrap;
tileViewItemElement1.Column = this.tileViewColumn3;
tileViewItemElement1.ColumnIndex = 1;
tileViewItemElement1.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter;
tileViewItemElement1.RowIndex = 1;
tileViewItemElement1.Text = "tileViewColumn3";
tileViewItemElement1.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.TopRight;
tileViewItemElement2.Appearance.Normal.Font = new System.Drawing.Font("Segoe UI", 7.25F, System.Drawing.FontStyle.Bold);
tileViewItemElement2.Appearance.Normal.ForeColor = System.Drawing.Color.Gray;
tileViewItemElement2.Appearance.Normal.Options.UseFont = true;
tileViewItemElement2.Appearance.Normal.Options.UseForeColor = true;
tileViewItemElement2.ColumnIndex = 1;
tileViewItemElement2.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter;
tileViewItemElement2.Text = "MANAGER";
tileViewItemElement2.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.TopRight;
tileViewItemElement3.Appearance.Normal.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
tileViewItemElement3.Appearance.Normal.Options.UseBackColor = true;
tileViewItemElement3.ColumnIndex = 2;
tileViewItemElement3.Height = 110;
tileViewItemElement3.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter;
tileViewItemElement3.RowIndex = 1;
tileViewItemElement3.Text = "";
tileViewItemElement3.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleLeft;
tileViewItemElement3.Width = 1;
tileViewItemElement4.Appearance.Normal.Font = new System.Drawing.Font("Segoe UI", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
tileViewItemElement4.Appearance.Normal.Options.UseFont = true;
tileViewItemElement4.Appearance.Normal.Options.UseTextOptions = true;
tileViewItemElement4.Appearance.Normal.TextOptions.WordWrap = DevExpress.Utils.WordWrap.NoWrap;
tileViewItemElement4.Column = this.tileViewColumn2;
tileViewItemElement4.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter;
tileViewItemElement4.Text = "tileViewColumn2";
tileViewItemElement4.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleLeft;
tileViewItemElement5.Appearance.Normal.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
tileViewItemElement5.Appearance.Normal.FontStyleDelta = System.Drawing.FontStyle.Bold;
tileViewItemElement5.Appearance.Normal.ForeColor = System.Drawing.Color.RoyalBlue;
tileViewItemElement5.Appearance.Normal.Options.UseFont = true;
tileViewItemElement5.Appearance.Normal.Options.UseForeColor = true;
tileViewItemElement5.Column = this.tileViewColumn1;
tileViewItemElement5.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter;
tileViewItemElement5.RowIndex = 3;
tileViewItemElement5.Text = "tileViewColumn1";
tileViewItemElement5.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.BottomLeft;
tileViewItemElement6.Appearance.Normal.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
tileViewItemElement6.Appearance.Normal.Options.UseFont = true;
tileViewItemElement6.Column = this.tileViewColumn4;
tileViewItemElement6.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter;
tileViewItemElement6.RowIndex = 2;
tileViewItemElement6.Text = "tileViewColumn4";
tileViewItemElement6.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.TopLeft;
tileViewItemElement7.Appearance.Normal.Font = new System.Drawing.Font("Segoe UI", 7.25F, System.Drawing.FontStyle.Bold);
tileViewItemElement7.Appearance.Normal.FontStyleDelta = System.Drawing.FontStyle.Bold;
tileViewItemElement7.Appearance.Normal.ForeColor = System.Drawing.Color.Gray;
tileViewItemElement7.Appearance.Normal.Options.UseFont = true;
tileViewItemElement7.Appearance.Normal.Options.UseForeColor = true;
tileViewItemElement7.ColumnIndex = 2;
tileViewItemElement7.ImageOptions.Image = global::DevExpress.DevAV.Properties.Resources.icon_about_16;
tileViewItemElement7.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleRight;
tileViewItemElement7.ImageOptions.ImageToTextAlignment = DevExpress.XtraEditors.TileControlImageToTextAlignment.Top;
tileViewItemElement7.Name = "RaiseImage";
tileViewItemElement7.RowIndex = 2;
tileViewItemElement7.Text = "RAISE";
tileViewItemElement7.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter;
tileViewItemElement8.Appearance.Normal.Font = new System.Drawing.Font("Segoe UI", 7.25F, System.Drawing.FontStyle.Bold);
tileViewItemElement8.Appearance.Normal.FontStyleDelta = System.Drawing.FontStyle.Bold;
tileViewItemElement8.Appearance.Normal.ForeColor = System.Drawing.Color.Gray;
tileViewItemElement8.Appearance.Normal.Options.UseFont = true;
tileViewItemElement8.Appearance.Normal.Options.UseForeColor = true;
tileViewItemElement8.ColumnIndex = 3;
tileViewItemElement8.ImageOptions.Image = global::DevExpress.DevAV.Properties.Resources.icon_about_16;
tileViewItemElement8.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleLeft;
tileViewItemElement8.ImageOptions.ImageToTextAlignment = DevExpress.XtraEditors.TileControlImageToTextAlignment.Top;
tileViewItemElement8.Name = "BonusImage";
tileViewItemElement8.RowIndex = 2;
tileViewItemElement8.Text = "BONUS";
tileViewItemElement8.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter;
this.tvEvaluations.TileTemplate.Add(tileViewItemElement1);
this.tvEvaluations.TileTemplate.Add(tileViewItemElement2);
this.tvEvaluations.TileTemplate.Add(tileViewItemElement3);
this.tvEvaluations.TileTemplate.Add(tileViewItemElement4);
this.tvEvaluations.TileTemplate.Add(tileViewItemElement5);
this.tvEvaluations.TileTemplate.Add(tileViewItemElement6);
this.tvEvaluations.TileTemplate.Add(tileViewItemElement7);
this.tvEvaluations.TileTemplate.Add(tileViewItemElement8);
//
// gvEvaluations
//
this.gvEvaluations.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] {
this.colCreatedOn,
this.colSubject1,
this.colCreatedBy});
this.gvEvaluations.GridControl = this.gcEvaluations;
this.gvEvaluations.Name = "gvEvaluations";
this.gvEvaluations.PreviewFieldName = "Details";
this.gvEvaluations.PreviewIndent = 0;
//
// colCreatedOn
//
this.colCreatedOn.AppearanceCell.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Bold);
this.colCreatedOn.AppearanceCell.Options.UseFont = true;
this.colCreatedOn.Caption = "CREATED ON";
this.colCreatedOn.FieldName = "CreatedOn";
this.colCreatedOn.Name = "colCreatedOn";
this.colCreatedOn.OptionsColumn.AllowEdit = false;
this.colCreatedOn.OptionsColumn.AllowFocus = false;
this.colCreatedOn.Visible = true;
this.colCreatedOn.VisibleIndex = 0;
this.colCreatedOn.Width = 90;
//
// colSubject1
//
this.colSubject1.Caption = "SUBJECT";
this.colSubject1.FieldName = "Subject";
this.colSubject1.Name = "colSubject1";
this.colSubject1.OptionsColumn.AllowEdit = false;
this.colSubject1.OptionsColumn.AllowFocus = false;
this.colSubject1.Visible = true;
this.colSubject1.VisibleIndex = 1;
this.colSubject1.Width = 238;
//
// colCreatedBy
//
this.colCreatedBy.Caption = "MANAGER";
this.colCreatedBy.FieldName = "CreatedBy";
this.colCreatedBy.Name = "colCreatedBy";
this.colCreatedBy.OptionsColumn.AllowEdit = false;
this.colCreatedBy.OptionsColumn.AllowFocus = false;
this.colCreatedBy.Visible = true;
this.colCreatedBy.VisibleIndex = 2;
this.colCreatedBy.Width = 228;
//
// gcTasks
//
this.gcTasks.Location = new System.Drawing.Point(0, 185);
this.gcTasks.MainView = this.tvTasks;
this.gcTasks.Name = "gcTasks";
this.gcTasks.RepositoryItems.AddRange(new DevExpress.XtraEditors.Repository.RepositoryItem[] {
this.repositoryItemDateEdit1});
this.gcTasks.ShowOnlyPredefinedDetails = true;
this.gcTasks.Size = new System.Drawing.Size(289, 408);
this.gcTasks.TabIndex = 5;
this.gcTasks.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
this.tvTasks,
this.gvTasks});
//
// tvTasks
//
this.tvTasks.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.Simple;
this.tvTasks.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] {
this.tileViewColumn5,
this.tileViewColumn6,
this.tileViewColumn7,
this.tileViewColumn8,
this.tileViewColumn9});
this.tvTasks.GridControl = this.gcTasks;
this.tvTasks.Name = "tvTasks";
this.tvTasks.OptionsTiles.HighlightFocusedTileStyle = DevExpress.XtraGrid.Views.Tile.HighlightFocusedTileStyle.None;
this.tvTasks.OptionsTiles.ItemPadding = new System.Windows.Forms.Padding(18, 12, 18, 16);
this.tvTasks.OptionsTiles.ItemSize = new System.Drawing.Size(400, 138);
this.tvTasks.OptionsTiles.LayoutMode = DevExpress.XtraGrid.Views.Tile.TileViewLayoutMode.List;
this.tvTasks.OptionsTiles.Orientation = System.Windows.Forms.Orientation.Vertical;
this.tvTasks.OptionsTiles.Padding = new System.Windows.Forms.Padding(0);
this.tvTasks.OptionsTiles.VerticalContentAlignment = DevExpress.Utils.VertAlignment.Top;
tableColumnDefinition5.Length.Value = 260D;
tableColumnDefinition6.Length.Type = DevExpress.XtraEditors.TableLayout.TableDefinitionLengthType.Pixel;
tableColumnDefinition6.Length.Value = 75D;
tableColumnDefinition7.Length.Type = DevExpress.XtraEditors.TableLayout.TableDefinitionLengthType.Pixel;
tableColumnDefinition7.Length.Value = 28D;
this.tvTasks.TileColumns.Add(tableColumnDefinition5);
this.tvTasks.TileColumns.Add(tableColumnDefinition6);
this.tvTasks.TileColumns.Add(tableColumnDefinition7);
tableRowDefinition5.Length.Value = 16D;
tableRowDefinition6.Length.Value = 14D;
tableRowDefinition7.Length.Value = 53D;
tableRowDefinition7.PaddingTop = 5;
tableRowDefinition8.Length.Value = 17D;
tableRowDefinition9.Length.Type = DevExpress.XtraEditors.TableLayout.TableDefinitionLengthType.Pixel;
tableRowDefinition9.Length.Value = 6D;
this.tvTasks.TileRows.Add(tableRowDefinition5);
this.tvTasks.TileRows.Add(tableRowDefinition6);
this.tvTasks.TileRows.Add(tableRowDefinition7);
this.tvTasks.TileRows.Add(tableRowDefinition8);
this.tvTasks.TileRows.Add(tableRowDefinition9);
tableSpan5.ColumnIndex = 2;
tableSpan5.RowSpan = 2;
tableSpan6.RowSpan = 2;
tableSpan7.ColumnSpan = 3;
tableSpan7.RowIndex = 4;
tableSpan8.ColumnIndex = 1;
tableSpan8.ColumnSpan = 2;
tableSpan8.RowIndex = 2;
tableSpan8.RowSpan = 2;
this.tvTasks.TileSpans.Add(tableSpan5);
this.tvTasks.TileSpans.Add(tableSpan6);
this.tvTasks.TileSpans.Add(tableSpan7);
this.tvTasks.TileSpans.Add(tableSpan8);
tileViewItemElement9.ColumnIndex = 2;
tileViewItemElement9.ImageOptions.Image = global::DevExpress.DevAV.Properties.Resources.MediumPriority;
tileViewItemElement9.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleRight;
tileViewItemElement9.Name = "PriorityImage";
tileViewItemElement9.Text = "";
tileViewItemElement10.Appearance.Normal.Font = new System.Drawing.Font("Segoe UI", 6.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
tileViewItemElement10.Appearance.Normal.FontStyleDelta = System.Drawing.FontStyle.Bold;
tileViewItemElement10.Appearance.Normal.ForeColor = System.Drawing.Color.Gray;
tileViewItemElement10.Appearance.Normal.Options.UseFont = true;
tileViewItemElement10.Appearance.Normal.Options.UseForeColor = true;
tileViewItemElement10.ColumnIndex = 1;
tileViewItemElement10.ImageOptions.ImageScaleMode = DevExpress.XtraEditors.TileItemImageScaleMode.ZoomInside;
tileViewItemElement10.Text = "DUE DATE";
tileViewItemElement10.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleRight;
tileViewItemElement11.Appearance.Normal.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
tileViewItemElement11.Appearance.Normal.FontStyleDelta = System.Drawing.FontStyle.Bold;
tileViewItemElement11.Appearance.Normal.Options.UseFont = true;
tileViewItemElement11.Column = this.tileViewColumn5;
tileViewItemElement11.ColumnIndex = 1;
tileViewItemElement11.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter;
tileViewItemElement11.ImageOptions.ImageScaleMode = DevExpress.XtraEditors.TileItemImageScaleMode.ZoomInside;
tileViewItemElement11.RowIndex = 1;
tileViewItemElement11.Text = "tileViewColumn5";
tileViewItemElement11.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleRight;
tileViewItemElement12.Appearance.Normal.Font = new System.Drawing.Font("Segoe UI", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
tileViewItemElement12.Appearance.Normal.Options.UseFont = true;
tileViewItemElement12.Column = this.tileViewColumn6;
tileViewItemElement12.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter;
tileViewItemElement12.ImageOptions.ImageScaleMode = DevExpress.XtraEditors.TileItemImageScaleMode.ZoomInside;
tileViewItemElement12.Text = "tileViewColumn6";
tileViewItemElement12.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleLeft;
tileViewItemElement13.Column = this.tileViewColumn7;
tileViewItemElement13.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter;
tileViewItemElement13.ImageOptions.ImageScaleMode = DevExpress.XtraEditors.TileItemImageScaleMode.ZoomInside;
tileViewItemElement13.RowIndex = 2;
tileViewItemElement13.Text = "tileViewColumn7";
tileViewItemElement13.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.TopLeft;
tileViewItemElement14.AnchorAlignment = DevExpress.Utils.AnchorAlignment.Left;
tileViewItemElement14.AnchorElementIndex = 8;
tileViewItemElement14.AnchorIndent = 1;
tileViewItemElement14.Appearance.Normal.Font = new System.Drawing.Font("Segoe UI", 21.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
tileViewItemElement14.Appearance.Normal.ForeColor = System.Drawing.Color.RoyalBlue;
tileViewItemElement14.Appearance.Normal.Options.UseFont = true;
tileViewItemElement14.Appearance.Normal.Options.UseForeColor = true;
tileViewItemElement14.Column = this.tileViewColumn8;
tileViewItemElement14.ColumnIndex = 1;
tileViewItemElement14.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter;
tileViewItemElement14.ImageOptions.ImageScaleMode = DevExpress.XtraEditors.TileItemImageScaleMode.ZoomInside;
tileViewItemElement14.RowIndex = 3;
tileViewItemElement14.Text = "tileViewColumn8";
tileViewItemElement15.Appearance.Normal.BackColor = System.Drawing.Color.LightGray;
tileViewItemElement15.Appearance.Normal.Options.UseBackColor = true;
tileViewItemElement15.Height = 6;
tileViewItemElement15.Name = "ProgressBack";
tileViewItemElement15.RowIndex = 4;
tileViewItemElement15.Text = "ProgressBack";
tileViewItemElement15.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleLeft;
tileViewItemElement15.TextVisible = false;
tileViewItemElement15.Width = 100;
tileViewItemElement16.Appearance.Normal.BackColor = System.Drawing.Color.RoyalBlue;
tileViewItemElement16.Appearance.Normal.Options.UseBackColor = true;
tileViewItemElement16.Height = 6;
tileViewItemElement16.Name = "ProgressFront";
tileViewItemElement16.RowIndex = 4;
tileViewItemElement16.Text = "ProgressFront";
tileViewItemElement16.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleLeft;
tileViewItemElement16.TextVisible = false;
tileViewItemElement16.Width = 50;
tileViewItemElement17.Appearance.Normal.Font = new System.Drawing.Font("Segoe UI", 21.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
tileViewItemElement17.Appearance.Normal.ForeColor = System.Drawing.Color.RoyalBlue;
tileViewItemElement17.Appearance.Normal.Options.UseFont = true;
tileViewItemElement17.Appearance.Normal.Options.UseForeColor = true;
tileViewItemElement17.ColumnIndex = 1;
tileViewItemElement17.ImageOptions.ImageAlignment = DevExpress.XtraEditors.TileItemContentAlignment.MiddleCenter;
tileViewItemElement17.ImageOptions.ImageScaleMode = DevExpress.XtraEditors.TileItemImageScaleMode.ZoomInside;
tileViewItemElement17.RowIndex = 3;
tileViewItemElement17.Text = "%";
tileViewItemElement17.TextAlignment = DevExpress.XtraEditors.TileItemContentAlignment.BottomRight;
this.tvTasks.TileTemplate.Add(tileViewItemElement9);
this.tvTasks.TileTemplate.Add(tileViewItemElement10);
this.tvTasks.TileTemplate.Add(tileViewItemElement11);
this.tvTasks.TileTemplate.Add(tileViewItemElement12);
this.tvTasks.TileTemplate.Add(tileViewItemElement13);
this.tvTasks.TileTemplate.Add(tileViewItemElement14);
this.tvTasks.TileTemplate.Add(tileViewItemElement15);
this.tvTasks.TileTemplate.Add(tileViewItemElement16);
this.tvTasks.TileTemplate.Add(tileViewItemElement17);
//
// tileViewColumn9
//
this.tileViewColumn9.Caption = "Priority";
this.tileViewColumn9.FieldName = "Priority";
this.tileViewColumn9.Name = "tileViewColumn9";
this.tileViewColumn9.Visible = true;
this.tileViewColumn9.VisibleIndex = 4;
//
// gvTasks
//
this.gvTasks.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] {
this.colDueDate,
this.colSubject,
this.colDescription});
this.gvTasks.GridControl = this.gcTasks;
this.gvTasks.Name = "gvTasks";
this.gvTasks.PreviewFieldName = "Description";
this.gvTasks.PreviewIndent = 0;
//
// colDueDate
//
this.colDueDate.AppearanceCell.Font = new System.Drawing.Font("Segoe UI", 8.25F, System.Drawing.FontStyle.Bold);
this.colDueDate.AppearanceCell.Options.UseFont = true;
this.colDueDate.Caption = "DUE DATE";
this.colDueDate.FieldName = "DueDate";
this.colDueDate.Name = "colDueDate";
this.colDueDate.OptionsColumn.AllowEdit = false;
this.colDueDate.OptionsColumn.AllowFocus = false;
this.colDueDate.Visible = true;
this.colDueDate.VisibleIndex = 0;
this.colDueDate.Width = 116;
//
// colSubject
//
this.colSubject.Caption = "SUBJECT";
this.colSubject.FieldName = "Subject";
this.colSubject.Name = "colSubject";
this.colSubject.OptionsColumn.AllowEdit = false;
this.colSubject.OptionsColumn.AllowFocus = false;
this.colSubject.Visible = true;
this.colSubject.VisibleIndex = 1;
this.colSubject.Width = 221;
//
// colDescription
//
this.colDescription.Caption = "DESCRIPTION";
this.colDescription.FieldName = "Description";
this.colDescription.Name = "colDescription";
this.colDescription.OptionsColumn.AllowEdit = false;
this.colDescription.OptionsColumn.AllowFocus = false;
this.colDescription.OptionsColumn.ShowInCustomizationForm = false;
this.colDescription.OptionsFilter.AllowFilter = false;
this.colDescription.Width = 504;
//
// buttonPanel
//
this.buttonPanel.ButtonBackgroundImages = this.buttonImages;
windowsUIButtonImageOptions1.ImageIndex = 0;
windowsUIButtonImageOptions2.ImageIndex = 1;
windowsUIButtonImageOptions3.ImageIndex = 2;
windowsUIButtonImageOptions4.ImageIndex = 3;
this.buttonPanel.Buttons.AddRange(new DevExpress.XtraEditors.ButtonPanel.IBaseButton[] {
new DevExpress.XtraBars.Docking2010.WindowsUIButton("", true, windowsUIButtonImageOptions1, DevExpress.XtraBars.Docking2010.ButtonStyle.PushButton, "", -1, true, null, true, false, true, null, -1, false),
new DevExpress.XtraBars.Docking2010.WindowsUIButton("", true, windowsUIButtonImageOptions2, DevExpress.XtraBars.Docking2010.ButtonStyle.PushButton, "", -1, true, null, true, false, true, null, -1, false),
new DevExpress.XtraBars.Docking2010.WindowsUIButton("", true, windowsUIButtonImageOptions3, DevExpress.XtraBars.Docking2010.ButtonStyle.PushButton, "", -1, true, null, true, false, true, null, -1, false),
new DevExpress.XtraBars.Docking2010.WindowsUIButton("", true, windowsUIButtonImageOptions4, DevExpress.XtraBars.Docking2010.ButtonStyle.PushButton, "", -1, true, null, true, false, true, null, -1, false)});
this.buttonPanel.ContentAlignment = System.Drawing.ContentAlignment.MiddleLeft;
this.buttonPanel.Images = this.images;
this.buttonPanel.Location = new System.Drawing.Point(144, 84);
this.buttonPanel.Name = "buttonPanel";
this.buttonPanel.Size = new System.Drawing.Size(420, 28);
this.buttonPanel.TabIndex = 4;
this.buttonPanel.Text = "windowsUIButtonPanel1";
//
// buttonImages
//
//this.buttonImages.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("buttonImages.ImageStream")));
//this.buttonImages.TransparentColor = System.Drawing.Color.Transparent;
//this.buttonImages.Images.SetKeyName(0, "glyph-backg-normal.png");
//this.buttonImages.Images.SetKeyName(1, "glyph-backg-hover.png");
//this.buttonImages.Images.SetKeyName(2, "glyph-backg-pressed.png");
//
// layoutControlGroup1
//
this.layoutControlGroup1.CustomizationFormText = "Root";
this.layoutControlGroup1.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True;
this.layoutControlGroup1.GroupBordersVisible = false;
this.layoutControlGroup1.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
this.ItemForPhoto,
this.simpleSeparator1,
this.emptySpaceItem2,
this.lciTasks,
this.layoutControlGroup2,
this.lciEvaluations,
this.layoutControlItem1});
this.layoutControlGroup1.Name = "Root";
this.layoutControlGroup1.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0);
this.layoutControlGroup1.Size = new System.Drawing.Size(578, 593);
this.layoutControlGroup1.TextVisible = false;
//
// ItemForPhoto
//
this.ItemForPhoto.Control = this.pictureEdit;
this.ItemForPhoto.CustomizationFormText = "ItemForPhoto";
this.ItemForPhoto.Location = new System.Drawing.Point(0, 0);
this.ItemForPhoto.MaxSize = new System.Drawing.Size(130, 130);
this.ItemForPhoto.MinSize = new System.Drawing.Size(130, 130);
this.ItemForPhoto.Name = "ItemForPhoto";
this.ItemForPhoto.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0);
this.ItemForPhoto.Size = new System.Drawing.Size(130, 136);
this.ItemForPhoto.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom;
this.ItemForPhoto.TextSize = new System.Drawing.Size(0, 0);
this.ItemForPhoto.TextVisible = false;
//
// simpleSeparator1
//
this.simpleSeparator1.AllowHotTrack = false;
this.simpleSeparator1.CustomizationFormText = "simpleSeparator1";
this.simpleSeparator1.Location = new System.Drawing.Point(0, 146);
this.simpleSeparator1.Name = "simpleSeparator1";
this.simpleSeparator1.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 10, 10);
this.simpleSeparator1.Size = new System.Drawing.Size(578, 2);
//
// emptySpaceItem2
//
this.emptySpaceItem2.AllowHotTrack = false;
this.emptySpaceItem2.CustomizationFormText = "emptySpaceItem2";
this.emptySpaceItem2.Location = new System.Drawing.Point(0, 136);
this.emptySpaceItem2.MaxSize = new System.Drawing.Size(0, 10);
this.emptySpaceItem2.MinSize = new System.Drawing.Size(10, 10);
this.emptySpaceItem2.Name = "emptySpaceItem2";
this.emptySpaceItem2.Size = new System.Drawing.Size(578, 10);
this.emptySpaceItem2.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom;
this.emptySpaceItem2.TextSize = new System.Drawing.Size(0, 0);
//
// lciTasks
//
this.lciTasks.Control = this.gcTasks;
this.lciTasks.CustomizationFormText = "lciTasks";
this.lciTasks.Location = new System.Drawing.Point(0, 185);
this.lciTasks.Name = "lciTasks";
this.lciTasks.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0);
this.lciTasks.Size = new System.Drawing.Size(289, 408);
this.lciTasks.TextSize = new System.Drawing.Size(0, 0);
this.lciTasks.TextVisible = false;
this.lciTasks.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never;
//
// layoutControlGroup2
//
this.layoutControlGroup2.CustomizationFormText = "layoutControlGroup2";
this.layoutControlGroup2.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True;
this.layoutControlGroup2.GroupBordersVisible = false;
this.layoutControlGroup2.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
this.sliName,
this.sliTitle,
this.layoutControlItem2,
this.emptySpaceItem3});
this.layoutControlGroup2.Location = new System.Drawing.Point(130, 0);
this.layoutControlGroup2.Name = "layoutControlGroup2";
this.layoutControlGroup2.Size = new System.Drawing.Size(448, 136);
//
// sliName
//
this.sliName.AllowHotTrack = false;
this.sliName.AppearanceItemCaption.Font = new System.Drawing.Font("Segoe UI", 20.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
this.sliName.AppearanceItemCaption.Options.UseFont = true;
this.sliName.CustomizationFormText = "Name";
this.sliName.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bindingSource, "FullNameBindable", true));
this.sliName.Location = new System.Drawing.Point(0, 0);
this.sliName.Name = "sliName";
this.sliName.Size = new System.Drawing.Size(424, 41);
this.sliName.Text = "Name";
this.sliName.TextSize = new System.Drawing.Size(71, 37);
//
// sliTitle
//
this.sliTitle.AllowHotTrack = false;
this.sliTitle.AppearanceItemCaption.Font = new System.Drawing.Font("Segoe UI", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
this.sliTitle.AppearanceItemCaption.Options.UseFont = true;
this.sliTitle.CustomizationFormText = "Title";
this.sliTitle.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bindingSource, "Title", true));
this.sliTitle.Location = new System.Drawing.Point(0, 41);
this.sliTitle.Name = "sliTitle";
this.sliTitle.Size = new System.Drawing.Size(424, 29);
this.sliTitle.Text = "Title";
this.sliTitle.TextSize = new System.Drawing.Size(71, 25);
//
// layoutControlItem2
//
this.layoutControlItem2.Control = this.buttonPanel;
this.layoutControlItem2.CustomizationFormText = "layoutControlItem2";
this.layoutControlItem2.Location = new System.Drawing.Point(0, 70);
this.layoutControlItem2.MinSize = new System.Drawing.Size(1, 32);
this.layoutControlItem2.Name = "layoutControlItem2";
this.layoutControlItem2.Size = new System.Drawing.Size(424, 32);
this.layoutControlItem2.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom;
this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0);
this.layoutControlItem2.TextVisible = false;
//
// emptySpaceItem3
//
this.emptySpaceItem3.AllowHotTrack = false;
this.emptySpaceItem3.CustomizationFormText = "emptySpaceItem3";
this.emptySpaceItem3.Location = new System.Drawing.Point(0, 102);
this.emptySpaceItem3.Name = "emptySpaceItem3";
this.emptySpaceItem3.Size = new System.Drawing.Size(424, 10);
this.emptySpaceItem3.TextSize = new System.Drawing.Size(0, 0);
//
// lciEvaluations
//
this.lciEvaluations.Control = this.gcEvaluations;
this.lciEvaluations.CustomizationFormText = "lciEvaluations";
this.lciEvaluations.Location = new System.Drawing.Point(289, 185);
this.lciEvaluations.Name = "lciEvaluations";
this.lciEvaluations.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0);
this.lciEvaluations.Size = new System.Drawing.Size(289, 408);
this.lciEvaluations.TextSize = new System.Drawing.Size(0, 0);
this.lciEvaluations.TextVisible = false;
//
// layoutControlItem1
//
this.layoutControlItem1.Control = this.officeTabFilter;
this.layoutControlItem1.Location = new System.Drawing.Point(0, 148);
this.layoutControlItem1.MaxSize = new System.Drawing.Size(0, 37);
this.layoutControlItem1.MinSize = new System.Drawing.Size(4, 37);
this.layoutControlItem1.Name = "layoutControlItem1";
this.layoutControlItem1.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 2, 4);
this.layoutControlItem1.Size = new System.Drawing.Size(578, 37);
this.layoutControlItem1.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom;
this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0);
this.layoutControlItem1.TextVisible = false;
//
// EmployeeView
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.modueLayout);
this.Name = "EmployeeView";
this.Size = new System.Drawing.Size(578, 593);
((System.ComponentModel.ISupportInitialize)(this.mvvmContext)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.repositoryItemDateEdit1.CalendarTimeProperties)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.repositoryItemDateEdit1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.images)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.pictureEdit.Properties)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSource)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.modueLayout)).EndInit();
this.modueLayout.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.officeTabFilter)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.gcEvaluations)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.tvEvaluations)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.gvEvaluations)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.gcTasks)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.tvTasks)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.gvTasks)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.ItemForPhoto)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.simpleSeparator1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem2)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.lciTasks)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.sliName)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.sliTitle)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem3)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.lciEvaluations)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit();
this.ResumeLayout(false);
}
#endregion
private DevExpress.XtraEditors.PictureEdit pictureEdit;
private System.Windows.Forms.BindingSource bindingSource;
private XtraLayout.LayoutControl modueLayout;
private XtraBars.Docking2010.WindowsUIButtonPanel buttonPanel;
private XtraLayout.LayoutControlGroup layoutControlGroup1;
private XtraLayout.LayoutControlItem ItemForPhoto;
private XtraLayout.SimpleLabelItem sliName;
private XtraLayout.SimpleLabelItem sliTitle;
private XtraLayout.LayoutControlItem layoutControlItem2;
private XtraLayout.SimpleSeparator simpleSeparator1;
private XtraLayout.EmptySpaceItem emptySpaceItem2;
private XtraGrid.GridControl gcTasks;
private XtraGrid.Columns.GridColumn colDueDate;
private XtraGrid.Columns.GridColumn colSubject;
private XtraLayout.LayoutControlItem lciTasks;
private TaskPreviewGridView gvTasks;
private XtraGrid.GridControl gcEvaluations;
private XtraLayout.LayoutControlItem lciEvaluations;
private XtraGrid.Columns.GridColumn colCreatedOn;
private XtraGrid.Columns.GridColumn colSubject1;
private XtraGrid.Columns.GridColumn colCreatedBy;
private TaskPreviewGridView gvEvaluations;
private DevExpress.Utils.ImageCollection images;
private XtraLayout.LayoutControlGroup layoutControlGroup2;
private XtraLayout.EmptySpaceItem emptySpaceItem3;
private System.Windows.Forms.ImageList buttonImages;
private XtraGrid.Columns.GridColumn colDescription;
private XtraGrid.Views.Tile.TileView tvEvaluations;
private XtraGrid.Columns.TileViewColumn tileViewColumn1;
private XtraGrid.Columns.TileViewColumn tileViewColumn2;
private XtraGrid.Columns.TileViewColumn tileViewColumn3;
private XtraGrid.Columns.TileViewColumn tileViewColumn4;
private XtraGrid.Views.Tile.TileView tvTasks;
private XtraGrid.Columns.TileViewColumn tileViewColumn5;
private XtraGrid.Columns.TileViewColumn tileViewColumn6;
private XtraGrid.Columns.TileViewColumn tileViewColumn7;
private XtraGrid.Columns.TileViewColumn tileViewColumn8;
private XtraEditors.Repository.RepositoryItemDateEdit repositoryItemDateEdit1;
private XtraGrid.Columns.TileViewColumn tileViewColumn9;
private XtraBars.Navigation.OfficeNavigationBar officeTabFilter;
private XtraLayout.LayoutControlItem layoutControlItem1;
private XtraBars.Navigation.NavigationBarItem navigationItemEvaluations;
private XtraBars.Navigation.NavigationBarItem navigationItemTasks;
}
}

View File

@@ -0,0 +1,134 @@
namespace DevExpress.DevAV.Modules {
using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms;
using DevExpress.DevAV;
using DevExpress.DevAV.ViewModels;
using DevExpress.XtraBars.Docking2010;
using DevExpress.XtraGrid.Views.Tile;
using DevExpress.XtraLayout.Utils;
using DevExpress.Utils.Svg;
public partial class EmployeeView : BaseModuleControl {
SvgImage svgYes;
SvgImage svgNo;
IDictionary<EmployeeTaskPriority, SvgImage> priorityImages;
public EmployeeView()
: base(typeof(SynchronizedEmployeeViewModel)) {
InitializeComponent();
gvTasks.SetViewFontSize(2, 1);
gvEvaluations.SetViewFontSize(2, 1);
BindCommands();
ViewModel.EntityChanged += ViewModel_EntityChanged;
officeTabFilter.SelectedItemChanged += OfficeTabFilter_SelectedItemChanged;
tvEvaluations.ItemCustomize += tvEvaluations_ItemCustomize;
tvTasks.ItemCustomize += tvTasks_ItemCustomize;
gcTasks.SizeChanged += (s, e) =>
{
if(gcTasks.MainView == tvTasks)
tvTasks.RefreshData();
};
var asm = typeof(MainForm).Assembly;
svgYes = SvgImage.FromResources("DevExpress.DevAV.Resources.EvaluationYes.svg", asm);
svgNo = SvgImage.FromResources("DevExpress.DevAV.Resources.EvaluationNo.svg", asm);
priorityImages = SVGHelper.CreateTaskPriorityImages(LookAndFeel, "DevExpress.DevAV.Resources.Tasks.");
buttonPanel.UseButtonBackgroundImages = false;
}
void OfficeTabFilter_SelectedItemChanged(object sender, XtraBars.Navigation.NavigationBarItemEventArgs e) {
bool showTasks = e.Item == navigationItemTasks;
lciTasks.Visibility = showTasks ? LayoutVisibility.Always : LayoutVisibility.Never;
lciEvaluations.Visibility = !showTasks ? LayoutVisibility.Always : LayoutVisibility.Never;
}
protected override void OnMVVMContextReleasing() {
ViewModel.EntityChanged -= ViewModel_EntityChanged;
}
protected override void OnDisposing() {
tvTasks.ItemCustomize -= tvTasks_ItemCustomize;
tvEvaluations.ItemCustomize -= tvEvaluations_ItemCustomize;
base.OnDisposing();
}
public EmployeeViewModel ViewModel {
get { return GetViewModel<EmployeeViewModel>(); }
}
void ViewModel_EntityChanged(object sender, System.EventArgs e) {
QueueUIUpdate();
}
protected override void OnDelayedUIUpdate() {
UpdateUI(ViewModel.Entity);
}
protected override void OnLoad(System.EventArgs e) {
base.OnLoad(e);
UpdateUI(ViewModel.Entity);
}
SizeF scaleFactor;
protected override void ScaleControl(SizeF factor, BoundsSpecified specified) {
base.ScaleControl(factor, specified);
this.scaleFactor = factor;
}
void BindCommands() {
var fluent = mvvmContext.OfType<EmployeeViewModel>();
fluent.BindCommand(ContactButton(0), x => x.Contacts.Message());
fluent.BindCommand(ContactButton(1), x => x.Contacts.Phone());
fluent.BindCommand(ContactButton(2), x => x.Contacts.VideoCall());
fluent.BindCommand(ContactButton(3), x => x.Contacts.MailTo());
}
WindowsUIButton ContactButton(int index) {
return (WindowsUIButton)buttonPanel.Buttons[index];
}
void UpdateUI(Employee employee) {
if(employee != null) {
if(!object.Equals(bindingSource.DataSource, employee))
bindingSource.DataSource = employee;
else {
employee.ResetBindable();
bindingSource.ResetBindings(false);
}
tvTasks.FocusedRowHandle = DevExpress.XtraGrid.GridControl.InvalidRowHandle;
tvEvaluations.FocusedRowHandle = DevExpress.XtraGrid.GridControl.InvalidRowHandle;
gcTasks.DataSource = employee.AssignedTasks;
gcEvaluations.DataSource = employee.Evaluations;
}
else {
gcTasks.DataSource = null;
gcEvaluations.DataSource = null;
}
modueLayout.Visible = (employee != null);
}
public bool IsHorizontalLayout {
get { return !colDescription.Visible; }
set {
gvEvaluations.OptionsView.ShowPreview = value;
gvTasks.OptionsView.ShowPreview = value;
colDescription.Visible = !value;
}
}
void tvEvaluations_ItemCustomize(object sender, XtraGrid.Views.Tile.TileViewItemCustomizeEventArgs e) {
string details = tvEvaluations.GetRowCellValue(e.RowHandle, "Details") as string;
var raiseImg = e.Item.GetElementByName("RaiseImage");
var bonusImg = e.Item.GetElementByName("BonusImage");
bool hasRaise = false;
bool hasBonus = false;
if(!string.IsNullOrEmpty(details)) {
details = details.ToLower().Replace(" ", string.Empty);
hasRaise = details.Contains("raise:yes");
hasBonus = details.Contains("bonus:yes");
}
raiseImg.ImageOptions.SvgImage = hasRaise ? svgYes : svgNo;
bonusImg.ImageOptions.SvgImage = hasBonus ? svgYes : svgNo;
}
void tvTasks_ItemCustomize(object sender, XtraGrid.Views.Tile.TileViewItemCustomizeEventArgs e) {
var view = sender as TileView;
var progressBack = e.Item.GetElementByName("ProgressBack");
var progressFront = e.Item.GetElementByName("ProgressFront");
var priorityElement = e.Item.GetElementByName("PriorityImage");
var rowPriority = (EmployeeTaskPriority)view.GetRowCellValue(e.RowHandle, view.Columns["Priority"]);
int completion = (int)view.GetRowCellValue(e.RowHandle, view.Columns["Completion"]);
priorityElement.ImageOptions.SvgImage = priorityImages[rowPriority];
progressBack.Width = (int)(view.GetViewInfo().GetItemSize().Width / (float)scaleFactor.Width) - view.OptionsTiles.ItemPadding.Horizontal;
progressFront.Width = (int)(progressBack.Width * (completion / 100.0f));
}
}
}

View File

@@ -0,0 +1,219 @@
<?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>
<metadata name="mvvmContext.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="images.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>144, 17</value>
</metadata>
<metadata name="bindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>362, 17</value>
</metadata>
<metadata name="buttonImages.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>234, 17</value>
</metadata>
<data name="buttonImages.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADQ
EQAAAk1TRnQBSQFMAgEBAwEAAfABBAHwAQQBHAEAARwBAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFw
AwABHAMAAQEBAAEgBgABMTIAAwoBDgMxAU4DSQGIA1cBuANgAd4DYgH2A2IB9gNgAd4DVwG4A0kBiAMx
AU4DCgEOQAADCgEOAzEBTgNJAYgDVwG4A2AB3gNiAfYDYgH2A2AB3gNXAbgDSQGIAzEBTgMKAQ5AAAMK
AQ4DMQFOA0kBiANXAbgDYAHeA2IB9gNiAfYDYAHeA1cBuANJAYgDMQFOAwoBDqgAAw8BFAM/AWwDWgHA
KP8DWgHAAz8BbAMPARQwAAMPARQDPwFsA1oBwCj/A1oBwAM/AWwDDwEUMAADDwEUAz8BbANaAcAo/wNa
AcADPwFsAw8BFJwAAy4BRwNUAa8I/wNZAccDSQGHAzIBUQMcAScDBwEKAwcBCgMcAScDMgFRA0kBhwNZ
AccI/wNUAa8DLgFHKAADLgFHA1QBrwj/A14B2ANWAasDSAGGAz0BaAM0AVQDNAFUAz0BaANIAYYDVgGr
A14B2Aj/A1QBrwMuAUcoAAMuAUcDVAGvOP8DVAGvAy4BR5QAAzoBYANdAdcE/wNZAcIDPQFnAwwBECAA
AwwBEAM9AWcDWQHCBP8DXQHXAzoBYCAAAzoBYANeAdgE/wNgAdQDTgGVAzYBWAMxAU0DMQFNAzEBTQMx
AU0DMQFNAzEBTQMxAU0DMQFNAzYBWANOAZUDYAHUBP8DXgHYAzoBYCAAAzoBYANdAddA/wNdAdcDOgFg
jAADOgFgA2UB5QT/A04BlQMcAScwAAMcAScDTgGVBP8DZQHlAzoBYBgAAzoBYANhAeYE/wNVAbUDPQFo
AzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAz0BaANVAbUE/wNh
AeYDOgFgGAADOgFgA2UB5Uj/A2UB5QM6AWCEAAMuAUcDXQHXBP8DSAGGAwUBBzgAAwUBBwNIAYYE/wNd
AdcDLgFHEAADLgFHA14B2AT/A1YBqwMzAVIDMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMx
AU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMzAVIDVgGrBP8DXgHYAy4BRxAAAy4BRwNdAddQ/wNdAdcDLgFH
fAADDwEUA1QBrwT/A04BlQMFAQdAAAMFAQcDTgGVBP8DVAGvAw8BFAgAAw8BFANUAa8E/wNVAbUDMwFS
AzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFN
AzEBTQMzAVIDVQG1BP8DVAGvAw8BFAgAAw8BFANUAa9Y/wNUAa8DDwEUeAADPwFsBP8DWQHCAxwBJ0gA
AxwBJwNZAcIE/wM/AWwIAAM/AWwE/wNgAdQDPQFoAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMx
AU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAz0BaANgAdQE/wM/AWwIAAM/
AWxg/wM/AWx0AAMKAQ4DWgHABP8DPQFnUAADPQFnBP8DWgHAAwoBDgMKAQ4DWgHABP8DTgGVAzEBTQMx
AU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMx
AU0DMQFNAzEBTQMxAU0DTgGVBP8DWgHAAwoBDgMKAQ4DWgHAYP8DWgHAAwoBDnAAAzEBTgT/A1kBxwMM
ARBQAAMMARADWQHHBP8DMQFOAzEBTgT/A14B2AM2AVgDMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFN
AzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQM2AVgDXgHY
BP8DMQFOAzEBTmj/AzEBTnAAA0kBiAT/A0kBh1gAA0kBhwT/A0kBiANJAYgE/wNWAasDMQFNAzEBTQMx
AU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMx
AU0DMQFNAzEBTQMxAU0DMQFNA1YBqwT/A0kBiANJAYho/wNJAYhwAANXAbgE/wMyAVFYAAMyAVEE/wNX
AbgDVwG4BP8DSAGGAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFN
AzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQNIAYYE/wNXAbgDVwG4aP8DVwG4
cAADYAHeBP8DHAEnWAADHAEnBP8DYAHeA2AB3gT/Az0BaAMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMx
AU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMx
AU0DPQFoBP8DYAHeA2AB3mj/A2AB3nAAA2IB9gT/AwcBClgAAwcBCgT/A2IB9gNiAfYE/wM0AVQDMQFN
AzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFN
AzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzQBVAT/A2IB9gNiAfZo/wNiAfZwAANiAfYE/wMHAQpYAAMH
AQoE/wNiAfYDYgH2BP8DNAFUAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMx
AU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQM0AVQE/wNiAfYDYgH2
aP8DYgH2cAADYAHeBP8DHAEnWAADHAEnBP8DYAHeA2AB3gT/Az0BaAMxAU0DMQFNAzEBTQMxAU0DMQFN
AzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFN
AzEBTQMxAU0DPQFoBP8DYAHeA2AB3mj/A2AB3nAAA1cBuAT/AzIBUVgAAzIBUQT/A1cBuANXAbgE/wNI
AYYDMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMx
AU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNA0gBhgT/A1cBuANXAbho/wNXAbhwAANJAYgE/wNJ
AYdYAANJAYcE/wNJAYgDSQGIBP8DVgGrAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFN
AzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQNWAasE/wNJ
AYgDSQGIaP8DSQGIcAADMQFOBP8DWQHHAwwBEFAAAwwBEANZAccE/wMxAU4DMQFOBP8DXgHYAzYBWAMx
AU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMx
AU0DMQFNAzEBTQMxAU0DMQFNAzYBWANeAdgE/wMxAU4DMQFOaP8DMQFOcAADCgEOA1oBwAT/Az0BZ1AA
Az0BZwT/A1oBwAMKAQ4DCgEOA1oBwAT/A04BlQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFN
AzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNA04BlQT/A1oBwAMK
AQ4DCgEOA1oBwGD/A1oBwAMKAQ50AAM/AWwE/wNZAcIDHAEnSAADHAEnA1kBwgT/Az8BbAgAAz8BbAT/
A2AB1AM9AWgDMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFN
AzEBTQMxAU0DMQFNAzEBTQMxAU0DPQFoA2AB1AT/Az8BbAgAAz8BbGD/Az8BbHgAAw8BFANUAa8E/wNO
AZUDBQEHQAADBQEHA04BlQT/A1QBrwMPARQIAAMPARQDVAGvBP8DVQG1AzMBUgMxAU0DMQFNAzEBTQMx
AU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMwFSA1UBtQT/
A1QBrwMPARQIAAMPARQDVAGvWP8DVAGvAw8BFHwAAy4BRwNdAdcE/wNIAYYDBQEHOAADBQEHA0gBhgT/
A10B1wMuAUcQAAMuAUcDXgHYBP8DVgGrAzMBUgMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFN
AzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzMBUgNWAasE/wNeAdgDLgFHEAADLgFHA10B11D/A10B1wMu
AUeEAAM6AWADZQHlBP8DTgGVAxwBJzAAAxwBJwNOAZUE/wNlAeUDOgFgGAADOgFgA2EB5gT/A1UBtQM9
AWgDMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DMQFNAzEBTQMxAU0DPQFoA1UBtQT/
A2EB5gM6AWAYAAM6AWADZQHlSP8DZQHlAzoBYIwAAzoBYANdAdcE/wNZAcIDPQFnAwwBECAAAwwBEAM9
AWcDWQHCBP8DXQHXAzoBYCAAAzoBYANeAdgE/wNgAdQDTgGVAzYBWAMxAU0DMQFNAzEBTQMxAU0DMQFN
AzEBTQMxAU0DMQFNAzYBWANOAZUDYAHUBP8DXgHYAzoBYCAAAzoBYANdAddA/wNdAdcDOgFglAADLgFH
A1QBrwj/A1kBxwNJAYcDMgFRAxwBJwMHAQoDBwEKAxwBJwMyAVEDSQGHA1kBxwj/A1QBrwMuAUcoAAMu
AUcDVAGvCP8DXgHYA1YBqwNIAYYDPQFoAzQBVAM0AVQDPQFoA0gBhgNWAasDXgHYCP8DVAGvAy4BRygA
Ay4BRwNUAa84/wNUAa8DLgFHnAADDwEUAz8BbANaAcAo/wNaAcADPwFsAw8BFDAAAw8BFAM/AWwDWgHA
KP8DWgHAAz8BbAMPARQwAAMPARQDPwFsA1oBwCj/A1oBwAM/AWwDDwEUqAADCgEOAzEBTgNJAYgDVwG4
A2AB3gNiAfYDYgH2A2AB3gNXAbgDSQGIAzEBTgMKAQ5AAAMKAQ4DMQFOA0kBiANXAbgDYAHeA2IB9gNi
AfYDYAHeA1cBuANJAYgDMQFOAwoBDkAAAwoBDgMxAU4DSQGIA1cBuANgAd4DYgH2A2IB9gNgAd4DVwG4
A0kBiAMxAU4DCgEOkAABQgFNAT4HAAE+AwABKAMAAXADAAEcAwABAQEAAQEFAAHAAQEWAAP/AQAB/wEA
AQ8B/wHwAQAC/wEAAQ8B8AUAAfwBAAEDAf8BwAEAAT8B/AEAAQMB8AUAAfgBAAEBAf8BgAEAAR8B+AEA
AQEB8AUAAfABPwHAAf8CAAEPAfACAAHwBQAB4AH/AfABfgIAAQcB4AIAAXAFAAHBAf8B+AE8AgABAwHA
AgABMAUAAYMB/wH8ARgCAAEBAYACAAEQBQABhwH/Af4BGAIAAQEBgAIAARAFAAEPAv8NAAEPAv8NAAEf
Av8BgAwAAR8C/wGADAABHwL/AYAMAAEfAv8BgAwAAR8C/wGADAABHwL/AYAMAAEfAv8BgAwAAR8C/wGA
DAABDwL/DQABDwL/DQABhwH/Af4BGAIAAQEBgAIAARAFAAGDAf8B/AEYAgABAQGAAgABEAUAAcEB/wH4
ATwCAAEDAcACAAEwBQAB4AH/AfABfgIAAQcB4AIAAXAFAAHwAT8BwAH/AgABDwHwAgAB8AUAAfgBAAEB
Af8BgAEAAR8B+AEAAQEB8AUAAfwBAAEDAf8BwAEAAT8B/AEAAQMB8AUAAf8BAAEPAf8B8AEAAv8BAAEP
AfAFAAs=
</value>
</data>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>66</value>
</metadata>
</root>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,159 @@
namespace DevExpress.DevAV.Modules {
using System.Windows.Forms;
using DevExpress.DevAV;
using DevExpress.DevAV.Presenters;
using DevExpress.DevAV.ViewModels;
using DevExpress.Skins;
using DevExpress.Utils;
using DevExpress.XtraLayout.Utils;
public partial class Employees : BaseModuleControl, IRibbonModule {
public Employees()
: base(typeof(EmployeeCollectionViewModel)) {
InitializeComponent();
GalleryItemAppearances.Apply(galleryQuickLetters);
layoutView.Appearance.FieldCaption.ForeColor = ColorHelper.DisabledTextColor;
layoutView.Appearance.FieldCaption.Options.UseForeColor = true;
//
CollectionUIViewModel = DevExpress.Mvvm.POCO.ViewModelSource.Create<CollectionUIViewModel>();
CollectionPresenter = CreateCollectionPresenter();
CollectionPresenter.ReloadEntities(mvvmContext);
//
BindCommands();
//
InitViewKind();
InitViewLayout();
InitEditors();
//NetCore3
biPrintSubItem.Enabled = false;
}
protected override void OnDisposing() {
CollectionPresenter.Dispose();
base.OnDisposing();
}
public EmployeeCollectionViewModel ViewModel {
get { return GetViewModel<EmployeeCollectionViewModel>(); }
}
protected EmployeeCollectionPresenter CollectionPresenter {
get;
private set;
}
protected virtual EmployeeCollectionPresenter CreateCollectionPresenter() {
return new EmployeeCollectionPresenter(gridControl, ViewModel, UpdateEntitiesCountRelatedUI);
}
protected override void OnInitServices() {
mvvmContext.RegisterService("View Settings", new ViewSettingsDialogDocumentManagerService(() => CollectionUIViewModel));
mvvmContext.RegisterService(new DetailFormDocumentManagerService(ModuleType.EmployeeEditView));
}
void BindCommands() {
//New
biNewEmployee.BindCommand(() => ViewModel.New(), ViewModel);
biNewGroup.BindCommand(() => ViewModel.GroupSelection(), ViewModel);
bmiNewEmployee.BindCommand(() => ViewModel.New(), ViewModel);
bmiNewGroup.BindCommand(() => ViewModel.GroupSelection(), ViewModel);
//Edit & Delete
biEdit.BindCommand((e) => ViewModel.Edit(e), ViewModel, () => ViewModel.SelectedEntity);
biDelete.BindCommand((e) => ViewModel.Delete(e), ViewModel, () => ViewModel.SelectedEntity);
//Map
biMap.BindCommand(() => ViewModel.ShowMap(), ViewModel);
//Filter
biNewCustomFilter.BindCommand(() => ViewModel.NewCustomFilter(), ViewModel);
//Print
bmiPrintProfile.BindCommand(() => ViewModel.PrintProfile(), ViewModel);
bmiPrintSummary.BindCommand(() => ViewModel.PrintSummary(), ViewModel);
bmiPrintDirectory.BindCommand(() => ViewModel.PrintDirectory(), ViewModel);
bmiPrintTaskList.BindCommand(() => ViewModel.PrintTaskList(), ViewModel);
//Mail Merge
biMailMerge.BindCommand(() => ViewModel.MailMerge(), ViewModel);
//Quick Letters
BindGalleryQuickLettersItem(0, EmployeeMailTemplate.ThankYouNote);
BindGalleryQuickLettersItem(1, EmployeeMailTemplate.EmployeeOfTheMonth);
BindGalleryQuickLettersItem(2, EmployeeMailTemplate.ServiceExcellence);
BindGalleryQuickLettersItem(3, EmployeeMailTemplate.ProbationNotice);
BindGalleryQuickLettersItem(4, EmployeeMailTemplate.WelcomeToDevAV);
//
biMeeting.BindCommand(() => ViewModel.ShowMeeting(), ViewModel);
biTask.BindCommand(() => ViewModel.ShowTask(), ViewModel);
//Settings
biViewSettings.BindCommand(() => ViewModel.ShowViewSettings(), ViewModel);
}
void BindGalleryQuickLettersItem(int index, EmployeeMailTemplate parameter) {
galleryQuickLetters.Gallery.Groups[0].Items[index].BindCommand(() => ViewModel.QuickLetter(parameter), ViewModel, () => parameter);
}
void UpdateEntitiesCountRelatedUI(int count) {
hiItemsCount.Caption = string.Format("RECORDS: {0}", count);
UpdateAdditionalButtons(count > 0);
}
void UpdateAdditionalButtons(bool hasRecords) {
biReverseSort.Enabled = hasRecords;
biAddColumns.Enabled = biExpandCollapse.Enabled = hasRecords && (CollectionUIViewModel.ViewKind == CollectionViewKind.ListView);
}
void biExpandCollapse_ItemClick(object sender, XtraBars.ItemClickEventArgs e) {
CollectionPresenter.ExpandCollapseGroups();
}
void biAddColumns_ItemCheckedChanged(object sender, XtraBars.ItemClickEventArgs e) {
CollectionPresenter.AddColumns(biAddColumns);
}
void biReverseSort_ItemClick(object sender, XtraBars.ItemClickEventArgs e) {
CollectionPresenter.ReverseSort(colDepartment, colFullName1);
}
EmployeeView employeeView;
protected override void OnLoad(System.EventArgs e) {
base.OnLoad(e);
var moduleLocator = GetService<Services.IModuleLocator>();
employeeView = moduleLocator.GetModule(ModuleType.EmployeeView) as EmployeeView;
ViewModelHelper.EnsureModuleViewModel(employeeView, ViewModel, ViewModel.SelectedEntityKey);
employeeView.Dock = DockStyle.Fill;
employeeView.Parent = pnlView;
}
void InitEditors() {
colPrefix.ColumnEdit = EditorHelpers.CreatePersonPrefixImageComboBox(null, gridControl.RepositoryItems);
}
#region ViewKind
protected CollectionUIViewModel CollectionUIViewModel { get; private set; }
void InitViewKind() {
CollectionUIViewModel.ViewKindChanged += ViewModel_ViewKindChanged;
biShowCard.BindCommand(() => CollectionUIViewModel.ShowCard(), CollectionUIViewModel);
biShowList.BindCommand(() => CollectionUIViewModel.ShowList(), CollectionUIViewModel);
bmiShowCard.BindCommand(() => CollectionUIViewModel.ShowCard(), CollectionUIViewModel);
bmiShowList.BindCommand(() => CollectionUIViewModel.ShowList(), CollectionUIViewModel);
biResetView.BindCommand(() => CollectionUIViewModel.ResetView(), CollectionUIViewModel);
}
void ViewModel_ViewKindChanged(object sender, System.EventArgs e) {
if(CollectionUIViewModel.ViewKind == CollectionViewKind.CardView)
gridControl.MainView = layoutView;
else
gridControl.MainView = gridView;
UpdateAdditionalButtons(ViewModel.Entities.Count > 0);
GridHelper.SetFindControlImages(gridControl);
}
#endregion
#region ViewLayout
void InitViewLayout() {
CollectionUIViewModel.ViewLayoutChanged += ViewModel_ViewLayoutChanged;
bmiHorizontalLayout.BindCommand(() => CollectionUIViewModel.ShowHorizontalLayout(), CollectionUIViewModel);
bmiVerticalLayout.BindCommand(() => CollectionUIViewModel.ShowVerticalLayout(), CollectionUIViewModel);
bmiHideDetail.BindCommand(() => CollectionUIViewModel.HideDetail(), CollectionUIViewModel);
}
void ViewModel_ViewLayoutChanged(object sender, System.EventArgs e) {
bool detailHidden = CollectionUIViewModel.IsDetailHidden;
splitterItem.Visibility = detailHidden ? LayoutVisibility.Never : LayoutVisibility.Always;
detailItem.Visibility = detailHidden ? LayoutVisibility.Never : LayoutVisibility.Always;
if(!detailHidden) {
if(splitterItem.IsVertical != CollectionUIViewModel.IsHorizontalLayout)
layoutControlGroup1.RotateLayout();
employeeView.IsHorizontalLayout = CollectionUIViewModel.IsHorizontalLayout;
}
}
#endregion
#region
XtraBars.Ribbon.RibbonControl IRibbonModule.Ribbon { get { return ribbonControl; } }
#endregion
void layoutView_CustomDrawCardFieldValue(object sender, XtraGrid.Views.Base.RowCellCustomDrawEventArgs e) {
if(e.Column != colPhoto) return;
e.DefaultDraw();
e.Cache.DrawRectangle(e.Cache.GetPen(layoutView.Appearance.FieldCaption.ForeColor, ScaleDPI.ScaleHLine(1)), e.Bounds);
e.Handled = true;
}
}
}

View File

@@ -0,0 +1,129 @@
<?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>
<metadata name="mvvmContext.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="bindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>144, 17</value>
</metadata>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>44</value>
</metadata>
</root>

View File

@@ -0,0 +1,277 @@
namespace DevExpress.DevAV.Modules {
partial class EmployeesCustomFilter {
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing) {
if(disposing && (components != null)) {
components.Dispose();
}
base.Dispose(disposing);
}
#region Component Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent() {
this.components = new System.ComponentModel.Container();
this.okBtn = new DevExpress.XtraEditors.SimpleButton();
this.moduleLayout = new DevExpress.XtraLayout.LayoutControl();
this.saveFilter = new DevExpress.XtraEditors.CheckEdit();
this.bindingSource = new System.Windows.Forms.BindingSource(this.components);
this.filterName = new DevExpress.XtraEditors.TextEdit();
this.filterControl = new DevExpress.XtraEditors.FilterControl();
this.cancelBtn = new DevExpress.XtraEditors.SimpleButton();
this.layoutControlGroup = new DevExpress.XtraLayout.LayoutControlGroup();
this.itemForControl = new DevExpress.XtraLayout.LayoutControlItem();
this.itemForOkBtn = new DevExpress.XtraLayout.LayoutControlItem();
this.itemForCancelBtn = new DevExpress.XtraLayout.LayoutControlItem();
this.itemForName = new DevExpress.XtraLayout.LayoutControlItem();
this.itemForSaveCheck = new DevExpress.XtraLayout.LayoutControlItem();
this.emptySpaceItem = new DevExpress.XtraLayout.EmptySpaceItem();
this.separator = new DevExpress.XtraLayout.SimpleSeparator();
((System.ComponentModel.ISupportInitialize)(this.moduleLayout)).BeginInit();
this.moduleLayout.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.saveFilter.Properties)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSource)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.filterName.Properties)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.itemForControl)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.itemForOkBtn)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.itemForCancelBtn)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.itemForName)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.itemForSaveCheck)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.separator)).BeginInit();
this.SuspendLayout();
//
// okBtn
//
this.okBtn.Location = new System.Drawing.Point(280, 254);
this.okBtn.Name = "okBtn";
this.okBtn.Size = new System.Drawing.Size(78, 22);
this.okBtn.StyleController = this.moduleLayout;
this.okBtn.TabIndex = 0;
this.okBtn.Text = "OK";
//
// moduleLayout
//
this.moduleLayout.AllowCustomization = false;
this.moduleLayout.Controls.Add(this.saveFilter);
this.moduleLayout.Controls.Add(this.filterName);
this.moduleLayout.Controls.Add(this.filterControl);
this.moduleLayout.Controls.Add(this.cancelBtn);
this.moduleLayout.Controls.Add(this.okBtn);
this.moduleLayout.Dock = System.Windows.Forms.DockStyle.Fill;
this.moduleLayout.Location = new System.Drawing.Point(0, 0);
this.moduleLayout.Name = "moduleLayout";
this.moduleLayout.Root = this.layoutControlGroup;
this.moduleLayout.Size = new System.Drawing.Size(452, 288);
this.moduleLayout.TabIndex = 0;
//
// saveFilter
//
this.saveFilter.AutoSizeInLayoutControl = true;
this.saveFilter.DataBindings.Add(new System.Windows.Forms.Binding("EditValue", this.bindingSource, "Save", true));
this.saveFilter.Location = new System.Drawing.Point(12, 179);
this.saveFilter.Name = "saveFilter";
this.saveFilter.Properties.Caption = "Save for future use";
this.saveFilter.Size = new System.Drawing.Size(116, 19);
this.saveFilter.StyleController = this.moduleLayout;
this.saveFilter.TabIndex = 5;
//
// bindingSource
//
this.bindingSource.DataSource = typeof(DevExpress.DevAV.ViewModels.CustomFilterViewModel);
//
// filterName
//
this.filterName.DataBindings.Add(new System.Windows.Forms.Binding("EditValue", this.bindingSource, "Name", true));
this.filterName.EditValue = "";
this.filterName.Location = new System.Drawing.Point(12, 202);
this.filterName.Name = "filterName";
this.filterName.Properties.NullValuePrompt = "Enter a name for your custom filter";
this.filterName.Properties.NullValuePromptShowForEmptyValue = true;
this.filterName.Size = new System.Drawing.Size(428, 20);
this.filterName.StyleController = this.moduleLayout;
this.filterName.TabIndex = 4;
//
// filterControl
//
this.filterControl.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder;
this.filterControl.Cursor = System.Windows.Forms.Cursors.Arrow;
this.filterControl.Location = new System.Drawing.Point(0, 0);
this.filterControl.Name = "filterControl";
this.filterControl.Size = new System.Drawing.Size(452, 161);
this.filterControl.TabIndex = 2;
//
// cancelBtn
//
this.cancelBtn.Location = new System.Drawing.Point(362, 254);
this.cancelBtn.Name = "cancelBtn";
this.cancelBtn.Size = new System.Drawing.Size(78, 22);
this.cancelBtn.StyleController = this.moduleLayout;
this.cancelBtn.TabIndex = 1;
this.cancelBtn.Text = "Cancel";
//
// layoutControlGroup1
//
this.layoutControlGroup.CustomizationFormText = "Root";
this.layoutControlGroup.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.False;
this.layoutControlGroup.GroupBordersVisible = false;
this.layoutControlGroup.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
this.itemForControl,
this.itemForOkBtn,
this.itemForCancelBtn,
this.itemForName,
this.itemForSaveCheck,
this.emptySpaceItem,
this.separator});
this.layoutControlGroup.Location = new System.Drawing.Point(0, 0);
this.layoutControlGroup.Name = "Root";
this.layoutControlGroup.OptionsItemText.TextToControlDistance = 6;
this.layoutControlGroup.Size = new System.Drawing.Size(452, 288);
this.layoutControlGroup.Text = "Root";
//
// itemForControl
//
this.itemForControl.Control = this.filterControl;
this.itemForControl.CustomizationFormText = "itemForControl";
this.itemForControl.Location = new System.Drawing.Point(0, 0);
this.itemForControl.Name = "itemForControl";
this.itemForControl.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0);
this.itemForControl.Size = new System.Drawing.Size(452, 161);
this.itemForControl.Text = "itemForControl";
this.itemForControl.TextSize = new System.Drawing.Size(0, 0);
this.itemForControl.TextToControlDistance = 0;
this.itemForControl.TextVisible = false;
//
// itemForOkBtn
//
this.itemForOkBtn.Control = this.okBtn;
this.itemForOkBtn.CustomizationFormText = "itemForOkBtn";
this.itemForOkBtn.Location = new System.Drawing.Point(268, 242);
this.itemForOkBtn.MaxSize = new System.Drawing.Size(92, 46);
this.itemForOkBtn.MinSize = new System.Drawing.Size(92, 46);
this.itemForOkBtn.Name = "itemForOkBtn";
this.itemForOkBtn.Padding = new DevExpress.XtraLayout.Utils.Padding(12, 2, 12, 12);
this.itemForOkBtn.Size = new System.Drawing.Size(92, 46);
this.itemForOkBtn.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom;
this.itemForOkBtn.Text = "itemForOkBtn";
this.itemForOkBtn.TextSize = new System.Drawing.Size(0, 0);
this.itemForOkBtn.TextToControlDistance = 0;
this.itemForOkBtn.TextVisible = false;
//
// itemForCancelBtn
//
this.itemForCancelBtn.Control = this.cancelBtn;
this.itemForCancelBtn.CustomizationFormText = "itemForCancelBtn";
this.itemForCancelBtn.Location = new System.Drawing.Point(360, 242);
this.itemForCancelBtn.MaxSize = new System.Drawing.Size(92, 46);
this.itemForCancelBtn.MinSize = new System.Drawing.Size(92, 46);
this.itemForCancelBtn.Name = "itemForCancelBtn";
this.itemForCancelBtn.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 12, 12, 12);
this.itemForCancelBtn.Size = new System.Drawing.Size(92, 46);
this.itemForCancelBtn.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom;
this.itemForCancelBtn.Text = "itemForCancelBtn";
this.itemForCancelBtn.TextSize = new System.Drawing.Size(0, 0);
this.itemForCancelBtn.TextToControlDistance = 0;
this.itemForCancelBtn.TextVisible = false;
//
// itemForName
//
this.itemForName.Control = this.filterName;
this.itemForName.CustomizationFormText = "itemForName";
this.itemForName.Location = new System.Drawing.Point(0, 198);
this.itemForName.Name = "itemForName";
this.itemForName.Padding = new DevExpress.XtraLayout.Utils.Padding(12, 12, 4, 20);
this.itemForName.Size = new System.Drawing.Size(452, 44);
this.itemForName.Text = "itemForName";
this.itemForName.TextSize = new System.Drawing.Size(0, 0);
this.itemForName.TextToControlDistance = 0;
this.itemForName.TextVisible = false;
//
// itemForSaveCheck
//
this.itemForSaveCheck.Control = this.saveFilter;
this.itemForSaveCheck.CustomizationFormText = "itemForSaveCheck";
this.itemForSaveCheck.Location = new System.Drawing.Point(0, 163);
this.itemForSaveCheck.Name = "itemForSaveCheck";
this.itemForSaveCheck.Padding = new DevExpress.XtraLayout.Utils.Padding(12, 12, 16, 0);
this.itemForSaveCheck.Size = new System.Drawing.Size(452, 35);
this.itemForSaveCheck.Text = "itemForSaveCheck";
this.itemForSaveCheck.TextSize = new System.Drawing.Size(0, 0);
this.itemForSaveCheck.TextToControlDistance = 0;
this.itemForSaveCheck.TextVisible = false;
//
// emptySpaceItem1
//
this.emptySpaceItem.AllowHotTrack = false;
this.emptySpaceItem.CustomizationFormText = "emptySpaceItem1";
this.emptySpaceItem.Location = new System.Drawing.Point(0, 242);
this.emptySpaceItem.Name = "emptySpaceItem1";
this.emptySpaceItem.Size = new System.Drawing.Size(268, 46);
this.emptySpaceItem.Text = "emptySpaceItem1";
this.emptySpaceItem.TextSize = new System.Drawing.Size(0, 0);
//
// simpleSeparator1
//
this.separator.AllowHotTrack = false;
this.separator.CustomizationFormText = "simpleSeparator1";
this.separator.Location = new System.Drawing.Point(0, 161);
this.separator.Name = "simpleSeparator1";
this.separator.Size = new System.Drawing.Size(452, 2);
this.separator.Text = "simpleSeparator1";
//
// EmployeesCustomFilter
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.moduleLayout);
this.Name = "EmployeesCustomFilter";
this.Size = new System.Drawing.Size(452, 288);
((System.ComponentModel.ISupportInitialize)(this.moduleLayout)).EndInit();
this.moduleLayout.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.saveFilter.Properties)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSource)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.filterName.Properties)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.itemForControl)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.itemForOkBtn)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.itemForCancelBtn)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.itemForName)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.itemForSaveCheck)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.separator)).EndInit();
this.ResumeLayout(false);
}
#endregion
private DevExpress.XtraEditors.SimpleButton okBtn;
private DevExpress.XtraEditors.SimpleButton cancelBtn;
private DevExpress.XtraEditors.FilterControl filterControl;
private DevExpress.XtraLayout.LayoutControl moduleLayout;
private XtraLayout.LayoutControlGroup layoutControlGroup;
private XtraLayout.LayoutControlItem itemForControl;
private XtraLayout.LayoutControlItem itemForOkBtn;
private XtraLayout.LayoutControlItem itemForCancelBtn;
private XtraLayout.EmptySpaceItem emptySpaceItem;
private XtraEditors.TextEdit filterName;
private XtraLayout.LayoutControlItem itemForName;
private XtraEditors.CheckEdit saveFilter;
private XtraLayout.LayoutControlItem itemForSaveCheck;
private System.Windows.Forms.BindingSource bindingSource;
private XtraLayout.SimpleSeparator separator;
}
}

View File

@@ -0,0 +1,60 @@
namespace DevExpress.DevAV.Modules {
using DevExpress.DevAV;
using DevExpress.DevAV.ViewModels;
public partial class EmployeesCustomFilter : BaseModuleControl {
public EmployeesCustomFilter(CustomFilterViewModel customFilterViewModel)
: base(typeof(CustomFilterViewModel), customFilterViewModel) {
InitializeComponent();
ViewModel.QueryFilterCriteria += ViewModel_QueryFilterCriteria;
bindingSource.DataSource = customFilterViewModel;
BuildFilterColumns();
BindEditors();
BindCommands();
FilterControlWithoutLike.Apply(filterControl);
}
protected override void OnMVVMContextReleasing() {
ViewModel.QueryFilterCriteria -= ViewModel_QueryFilterCriteria;
}
protected override void OnLoad(System.EventArgs ea) {
base.OnLoad(ea);
filterControl.FilterCriteria = ViewModel.FilterCriteria;
}
void ViewModel_QueryFilterCriteria(object sender, QueryFilterCriteriaEventArgs e) {
e.FilterCriteria = filterControl.FilterCriteria;
}
public CustomFilterViewModel ViewModel {
get { return GetViewModel<CustomFilterViewModel>(); }
}
void BuildFilterColumns() {
var builder = new FilterColumnCollectionBuilder<Employee>(filterControl.FilterColumns);
builder
.AddColumn(e => e.FirstName)
.AddColumn(e => e.LastName)
.AddColumn(e => e.FullName)
.AddColumn(e => e.MobilePhone)
.AddColumn(e => e.HomePhone)
.AddColumn(e => e.Address.City)
.AddColumn(e => e.Address.Line)
.AddColumn(e => e.Address.ZipCode)
.AddColumn(e => e.Email)
.AddColumn(e => e.Skype)
.AddDateTimeColumn(e => e.BirthDate)
.AddDateTimeColumn(e => e.HireDate)
.AddLookupColumn(e => e.Department)
.AddLookupColumn(e => e.Status)
.AddLookupColumn(e => e.Address.State)
.AddLookupColumn(e => e.Prefix);
}
void BindEditors() {
var errorProvider = new DevExpress.XtraEditors.DXErrorProvider.DXErrorProvider(components);
errorProvider.ContainerControl = this;
errorProvider.DataSource = bindingSource;
}
void BindCommands() {
var fluent = mvvmContext.OfType<CustomFilterViewModel>();
fluent.BindCommand(okBtn, x => x.OK());
fluent.BindCommand(cancelBtn, x => x.Cancel());
}
}
}

View File

@@ -0,0 +1,123 @@
<?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>
<metadata name="bindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
</root>

View File

@@ -0,0 +1,65 @@
namespace DevExpress.DevAV.Modules {
partial class EmployeesExport {
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing) {
if(disposing && (components != null)) {
components.Dispose();
}
base.Dispose(disposing);
}
#region Component Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent() {
this.exportSettingsControl = new DevExpress.DevAV.ReportExportControl();
this.previewControl = new DevExpress.DevAV.ReportPreviewControl();
this.SuspendLayout();
//
// exportSettingsControl
//
this.exportSettingsControl.Dock = System.Windows.Forms.DockStyle.Left;
this.exportSettingsControl.Location = new System.Drawing.Point(0, 0);
this.exportSettingsControl.Name = "exportSettingsControl";
this.exportSettingsControl.SelectedExport = DevExpress.XtraPrinting.ExportTarget.Xls;
this.exportSettingsControl.Size = new System.Drawing.Size(310, 600);
this.exportSettingsControl.TabIndex = 0;
//
// previewControl
//
this.previewControl.Dock = System.Windows.Forms.DockStyle.Fill;
this.previewControl.Location = new System.Drawing.Point(310, 0);
this.previewControl.Name = "previewControl";
this.previewControl.Size = new System.Drawing.Size(714, 600);
this.previewControl.TabIndex = 1;
this.previewControl.Visible = false;
//
// EmployeesExport
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.previewControl);
this.Controls.Add(this.exportSettingsControl);
this.Name = "EmployeesExport";
this.Size = new System.Drawing.Size(1024, 600);
this.ResumeLayout(false);
}
#endregion
private ReportExportControl exportSettingsControl;
private ReportPreviewControl previewControl;
}
}

View File

@@ -0,0 +1,160 @@
namespace DevExpress.DevAV.Modules {
using System;
using System.Collections.Generic;
using System.Windows.Forms;
using DevExpress.DevAV;
using DevExpress.DevAV.ViewModels;
using DevExpress.XtraPrinting;
using DevExpress.XtraReports.Parameters;
using DevExpress.XtraReports.UI;
public partial class EmployeesExport : BaseModuleControl {
public EmployeesExport()
: base(typeof(EmployeesReportViewModel)) {
InitializeComponent();
ViewModel.ReportTypeChanged += ViewModel_ReportTypeChanged;
ViewModel.ReportEntityKeyChanged += ViewModel_ReportEntityKeyChanged;
ViewModel.Reload += ViewModel_Reload;
exportSettingsControl.ExportClick += exportSettings_Export;
}
protected override void OnMVVMContextReleasing() {
ViewModel.Reload -= ViewModel_Reload;
ViewModel.ReportEntityKeyChanged -= ViewModel_ReportEntityKeyChanged;
ViewModel.ReportTypeChanged -= ViewModel_ReportTypeChanged;
}
protected override void OnDisposing() {
exportSettingsControl.ExportClick -= exportSettings_Export;
previewControl.DocumentSource = null;
base.OnDisposing();
}
protected override void OnLoad(EventArgs e) {
base.OnLoad(e);
if(ViewModel != null) ViewModel.OnLoad();
UpdatePreview();
}
public EmployeesReportViewModel ViewModel {
get { return GetViewModel<EmployeesReportViewModel>(); }
}
public EmployeeCollectionViewModel CollectionViewModel {
get { return GetParentViewModel<EmployeeCollectionViewModel>(); }
}
Parameter GetParameter(string name, Type type) {
if(report != null) {
if(report.Parameters[name] == null || report.Parameters[name].Type != type)
throw new Exception("Invalid report parameter.");
return report.Parameters[name];
}
return null;
}
Parameter ParamAscending {
get { return GetParameter("paramAscending", typeof(bool)); }
}
Parameter ParamEvaluations {
get { return GetParameter("paramEvaluations", typeof(bool)); }
}
Parameter ParamDueDate {
get { return GetParameter("paramDueDate", typeof(bool)); }
}
void ViewModel_ReportEntityKeyChanged(object sender, EventArgs e) {
UpdatePreview();
}
void ViewModel_ReportTypeChanged(object sender, System.EventArgs e) {
UpdatePreview();
}
void ViewModel_Reload(object sender, EventArgs e) {
UpdatePreview();
}
XtraReport report;
void UpdatePreview() {
if(ViewModel == null || ViewModel.ReportType == EmployeeReportType.None)
return;
this.report = CreateAndInitializeReport(ViewModel.ReportType);
previewControl.DocumentSource = report;
CreateDocument(report);
exportSettingsControl.SetSettings(GetSettingsEditor(ViewModel.ReportType));
exportSettingsControl.ExportEnabled = false;
}
Control GetSettingsEditor(EmployeeReportType reportType) {
switch(reportType) {
case EmployeeReportType.Profile:
return new EvaluationsControl(value => SetParameter(ParamEvaluations, value), (bool)ParamEvaluations.Value);
case EmployeeReportType.Directory:
case EmployeeReportType.Summary:
return new SortOrderControl(value => SetParameter(ParamAscending, value), (bool)ParamAscending.Value);
case EmployeeReportType.TaskList:
return new TasksSortControl(value => SetParameter(ParamDueDate, value), (bool)ParamDueDate.Value);
}
return null;
}
void SetParameter(Parameter parameter, bool value) {
if(parameter != null) {
parameter.Value = value;
CreateDocument(report);
}
}
void exportSettings_Export(object sender, EventArgs e) {
previewControl.DocumentViewer.PrintingSystem.ExportOptions.PrintPreview.ShowOptionsBeforeExport = Control.ModifierKeys == Keys.Control ? true : false;
switch(exportSettingsControl.SelectedExport) {
case ExportTarget.Pdf:
previewControl.DocumentViewer.ExecCommand(PrintingSystemCommand.ExportPdf);
break;
case ExportTarget.Html:
previewControl.DocumentViewer.ExecCommand(PrintingSystemCommand.ExportHtm);
break;
case ExportTarget.Mht:
previewControl.DocumentViewer.ExecCommand(PrintingSystemCommand.ExportMht);
break;
case ExportTarget.Rtf:
previewControl.DocumentViewer.ExecCommand(PrintingSystemCommand.ExportRtf);
break;
case ExportTarget.Xls:
previewControl.DocumentViewer.ExecCommand(PrintingSystemCommand.ExportXls);
break;
case ExportTarget.Xlsx:
previewControl.DocumentViewer.ExecCommand(PrintingSystemCommand.ExportXlsx);
break;
case ExportTarget.Csv:
previewControl.DocumentViewer.ExecCommand(PrintingSystemCommand.ExportCsv);
break;
case ExportTarget.Text:
previewControl.DocumentViewer.ExecCommand(PrintingSystemCommand.ExportTxt);
break;
case ExportTarget.Image:
previewControl.DocumentViewer.ExecCommand(PrintingSystemCommand.ExportGraphic);
break;
default:
throw new ArgumentOutOfRangeException("Export");
}
}
XtraReport CreateAndInitializeReport(EmployeeReportType reportType) {
var locator = GetService<Services.IReportLocator>();
var report = locator.GetReport(reportType) as XtraReport;
switch(reportType) {
case EmployeeReportType.Profile:
report.DataSource = new List<Employee> { CollectionViewModel.SelectedEntity };
break;
case EmployeeReportType.TaskList:
report.DataSource = ViewModel.Tasks;
break;
case EmployeeReportType.Directory:
case EmployeeReportType.Summary:
report.DataSource = CollectionViewModel.Entities;
break;
}
return report;
}
void CreateDocument(XtraReport report) {
if(report != null) {
report.PrintingSystem.ClearContent();
report.CreateDocument(true);
report.PrintingSystem.AfterBuildPages -= PrintingSystem_AfterBuildPages;
report.PrintingSystem.AfterBuildPages += PrintingSystem_AfterBuildPages;
}
}
void PrintingSystem_AfterBuildPages(object sender, EventArgs e) {
exportSettingsControl.ExportEnabled = ((PrintingSystemBase)sender).PageCount > 0;
previewControl.Visible = true;
}
}
}

View 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>

View File

@@ -0,0 +1,147 @@
namespace DevExpress.DevAV.Modules {
partial class EmployeesFilterPane {
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing) {
if(disposing && (components != null)) {
components.Dispose();
}
base.Dispose(disposing);
}
#region Component Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent() {
this.btnNewEmployee = new DevExpress.XtraEditors.SimpleButton();
this.moduleLayout = new DevExpress.XtraLayout.LayoutControl();
this.treeList = new DevExpress.XtraTreeList.TreeList();
this.Root = new DevExpress.XtraLayout.LayoutControlGroup();
this.treeListLayoutControlItem = new DevExpress.XtraLayout.LayoutControlItem();
this.btnNewEmployeeLayoutControlItem = new DevExpress.XtraLayout.LayoutControlItem();
((System.ComponentModel.ISupportInitialize)(this.mvvmContext)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.moduleLayout)).BeginInit();
this.moduleLayout.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.treeList)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.Root)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.treeListLayoutControlItem)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.btnNewEmployeeLayoutControlItem)).BeginInit();
this.SuspendLayout();
//
// btnNewEmployee
//
this.btnNewEmployee.ImageUri.ResourceType = typeof(DevExpress.DevAV.MainForm);
this.btnNewEmployee.ImageUri.Uri = "resource://DevExpress.DevAV.Resources.NewEmploye.svg?Size=16x16";
this.btnNewEmployee.Location = new System.Drawing.Point(14, 14);
this.btnNewEmployee.MaximumSize = new System.Drawing.Size(150, 0);
this.btnNewEmployee.MinimumSize = new System.Drawing.Size(150, 0);
this.btnNewEmployee.Name = "btnNewEmployee";
this.btnNewEmployee.Size = new System.Drawing.Size(150, 22);
this.btnNewEmployee.StyleController = this.moduleLayout;
this.btnNewEmployee.TabIndex = 0;
this.btnNewEmployee.Text = "New Employee";
//
// moduleLayout
//
this.moduleLayout.AllowCustomization = false;
this.moduleLayout.Controls.Add(this.btnNewEmployee);
this.moduleLayout.Controls.Add(this.treeList);
this.moduleLayout.Dock = System.Windows.Forms.DockStyle.Fill;
this.moduleLayout.Location = new System.Drawing.Point(0, 0);
this.moduleLayout.Name = "moduleLayout";
this.moduleLayout.Root = this.Root;
this.moduleLayout.Size = new System.Drawing.Size(200, 603);
this.moduleLayout.TabIndex = 2;
//
// treeList
//
this.treeList.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder;
this.treeList.Location = new System.Drawing.Point(12, 54);
this.treeList.Name = "treeList";
this.treeList.OptionsBehavior.Editable = false;
this.treeList.OptionsDragAndDrop.DragNodesMode = DevExpress.XtraTreeList.DragNodesMode.Single;
this.treeList.OptionsSelection.EnableAppearanceFocusedCell = false;
this.treeList.OptionsView.FocusRectStyle = DevExpress.XtraTreeList.DrawFocusRectStyle.None;
this.treeList.OptionsView.ShowColumns = false;
this.treeList.OptionsView.ShowHorzLines = false;
this.treeList.OptionsView.ShowIndentAsRowStyle = true;
this.treeList.OptionsView.ShowIndicator = false;
this.treeList.OptionsView.ShowVertLines = false;
this.treeList.Size = new System.Drawing.Size(176, 537);
this.treeList.TabIndex = 1;
//
// Root
//
this.Root.CustomizationFormText = "Root";
this.Root.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True;
this.Root.GroupBordersVisible = false;
this.Root.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
this.treeListLayoutControlItem,
this.btnNewEmployeeLayoutControlItem});
this.Root.Location = new System.Drawing.Point(0, 0);
this.Root.Name = "Root";
this.Root.OptionsItemText.TextToControlDistance = 6;
this.Root.Size = new System.Drawing.Size(200, 603);
//
// treeListLayoutControlItem
//
this.treeListLayoutControlItem.Control = this.treeList;
this.treeListLayoutControlItem.CustomizationFormText = "treeListLayoutControlItem";
this.treeListLayoutControlItem.Location = new System.Drawing.Point(0, 42);
this.treeListLayoutControlItem.Name = "treeListLayoutControlItem";
this.treeListLayoutControlItem.Size = new System.Drawing.Size(180, 541);
this.treeListLayoutControlItem.TextSize = new System.Drawing.Size(0, 0);
this.treeListLayoutControlItem.TextVisible = false;
//
// btnNewEmployeeLayoutControlItem
//
this.btnNewEmployeeLayoutControlItem.Control = this.btnNewEmployee;
this.btnNewEmployeeLayoutControlItem.ControlAlignment = System.Drawing.ContentAlignment.MiddleLeft;
this.btnNewEmployeeLayoutControlItem.CustomizationFormText = "btnNewEmployeeLayoutControlItem";
this.btnNewEmployeeLayoutControlItem.Location = new System.Drawing.Point(0, 0);
this.btnNewEmployeeLayoutControlItem.Name = "btnNewEmployeeLayoutControlItem";
this.btnNewEmployeeLayoutControlItem.Padding = new DevExpress.XtraLayout.Utils.Padding(4, 4, 4, 16);
this.btnNewEmployeeLayoutControlItem.Size = new System.Drawing.Size(180, 42);
this.btnNewEmployeeLayoutControlItem.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.SupportHorzAlignment;
this.btnNewEmployeeLayoutControlItem.TextSize = new System.Drawing.Size(0, 0);
this.btnNewEmployeeLayoutControlItem.TextVisible = false;
this.btnNewEmployeeLayoutControlItem.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never;
//
// EmployeesFilterPane
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.moduleLayout);
this.Name = "EmployeesFilterPane";
this.Size = new System.Drawing.Size(200, 603);
((System.ComponentModel.ISupportInitialize)(this.mvvmContext)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.moduleLayout)).EndInit();
this.moduleLayout.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.treeList)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.Root)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.treeListLayoutControlItem)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.btnNewEmployeeLayoutControlItem)).EndInit();
this.ResumeLayout(false);
}
#endregion
private DevExpress.XtraEditors.SimpleButton btnNewEmployee;
private XtraTreeList.TreeList treeList;
private XtraLayout.LayoutControl moduleLayout;
private XtraLayout.LayoutControlGroup Root;
private XtraLayout.LayoutControlItem treeListLayoutControlItem;
private XtraLayout.LayoutControlItem btnNewEmployeeLayoutControlItem;
}
}

View File

@@ -0,0 +1,50 @@
namespace DevExpress.DevAV.Modules {
using DevExpress.DevAV.Presenters;
using DevExpress.DevAV.ViewModels;
using DevExpress.XtraLayout.Utils;
public partial class EmployeesFilterPane : BaseModuleControl, ISupportCompactLayout {
EmployeeFilterTreeListPresenter presenterCore;
public EmployeesFilterPane(EmployeeCollectionViewModel collectionViewModel)
: base(typeof(EmployeesFilterTreeViewModel), new object[] { collectionViewModel }) {
InitializeComponent();
FiltersTreeListAppearances.Apply(treeList);
this.presenterCore = CreatePresenter();
BindCommands();
}
protected override void OnDisposing() {
Presenter.Dispose();
base.OnDisposing();
}
public EmployeesFilterTreeViewModel ViewModel {
get { return GetViewModel<EmployeesFilterTreeViewModel>(); }
}
public EmployeeFilterTreeListPresenter Presenter {
get { return presenterCore; }
}
protected virtual EmployeeFilterTreeListPresenter CreatePresenter() {
return new EmployeeFilterTreeListPresenter(treeList, ViewModel);
}
protected override void OnInitServices() {
mvvmContext.RegisterService("Custom Filter", new FilterDialogDocumentManagerService(ModuleType.EmployeesCustomFilter));
mvvmContext.RegisterService("Group Filter", new FilterDialogDocumentManagerService(ModuleType.EmployeesGroupFilter));
}
protected virtual void BindCommands() {
btnNewEmployee.BindCommand(() => Presenter.CollectionViewModel.New(), Presenter.CollectionViewModel);
}
#region ISupportCompactLayout Members
bool compactLayout = true;
bool ISupportCompactLayout.Compact {
get { return compactLayout; }
set {
if(compactLayout == value) return;
compactLayout = value;
UpdateCompactLayout();
}
}
void UpdateCompactLayout() {
btnNewEmployeeLayoutControlItem.Visibility = compactLayout ? LayoutVisibility.Never : LayoutVisibility.Always;
}
#endregion
}
}

View File

@@ -0,0 +1,123 @@
<?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>
<metadata name="mvvmContext.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
</root>

View File

@@ -0,0 +1,141 @@
namespace DevExpress.DevAV.Modules {
partial class EmployeesFilterPaneCollapsed {
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing) {
if(disposing && (components != null)) {
components.Dispose();
}
base.Dispose(disposing);
}
#region Component Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent() {
this.moduleLayout = new DevExpress.XtraLayout.LayoutControl();
this.navigationBar = new DevExpress.XtraBars.Navigation.OfficeNavigationBar();
this.btnNew = new DevExpress.XtraEditors.SimpleButton();
this.Root = new DevExpress.XtraLayout.LayoutControlGroup();
this.btnNewLayoutControlItem = new DevExpress.XtraLayout.LayoutControlItem();
this.filtersLayoutControlItem = new DevExpress.XtraLayout.LayoutControlItem();
((System.ComponentModel.ISupportInitialize)(this.mvvmContext)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.moduleLayout)).BeginInit();
this.moduleLayout.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.navigationBar)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.Root)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.btnNewLayoutControlItem)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.filtersLayoutControlItem)).BeginInit();
this.SuspendLayout();
//
// moduleLayout
//
this.moduleLayout.AllowCustomization = false;
this.moduleLayout.Controls.Add(this.navigationBar);
this.moduleLayout.Controls.Add(this.btnNew);
this.moduleLayout.Dock = System.Windows.Forms.DockStyle.Fill;
this.moduleLayout.Location = new System.Drawing.Point(0, 0);
this.moduleLayout.Name = "moduleLayout";
this.moduleLayout.Root = this.Root;
this.moduleLayout.Size = new System.Drawing.Size(60, 600);
this.moduleLayout.TabIndex = 1;
//
// navigationBar
//
this.navigationBar.AnimateItemPressing = false;
this.navigationBar.AutoSize = false;
this.navigationBar.CustomizationButtonVisibility = DevExpress.XtraBars.Navigation.CustomizationButtonVisibility.Hidden;
this.navigationBar.HorizontalContentAlignment = DevExpress.Utils.HorzAlignment.Center;
this.navigationBar.ItemSkinning = true;
this.navigationBar.Location = new System.Drawing.Point(12, 38);
this.navigationBar.MaximumSize = new System.Drawing.Size(50, 0);
this.navigationBar.Name = "navigationBar";
this.navigationBar.Orientation = System.Windows.Forms.Orientation.Vertical;
this.navigationBar.ShowPeekFormOnItemHover = false;
this.navigationBar.Size = new System.Drawing.Size(46, 550);
this.navigationBar.TabIndex = 2;
//
// btnNew
//
this.btnNew.Image = global::DevExpress.DevAV.Properties.Resources.icon_new_employee_16;
this.btnNew.ImageLocation = DevExpress.XtraEditors.ImageLocation.MiddleCenter;
this.btnNew.ImageUri.ResourceType = typeof(DevExpress.DevAV.MainForm);
this.btnNew.ImageUri.Uri = "resource://DevExpress.DevAV.Resources.NewEmploye.svg?Size=16x16";
this.btnNew.Location = new System.Drawing.Point(12, 12);
this.btnNew.Name = "btnNew";
this.btnNew.Size = new System.Drawing.Size(46, 22);
this.btnNew.StyleController = this.moduleLayout;
this.btnNew.TabIndex = 0;
//
// Root
//
this.Root.CustomizationFormText = "Root";
this.Root.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True;
this.Root.GroupBordersVisible = false;
this.Root.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
this.btnNewLayoutControlItem,
this.filtersLayoutControlItem});
this.Root.Location = new System.Drawing.Point(0, 0);
this.Root.Name = "Root";
this.Root.Padding = new DevExpress.XtraLayout.Utils.Padding(10, 0, 10, 10);
this.Root.Size = new System.Drawing.Size(60, 600);
//
// btnNewLayoutControlItem
//
this.btnNewLayoutControlItem.Control = this.btnNew;
this.btnNewLayoutControlItem.CustomizationFormText = "New";
this.btnNewLayoutControlItem.Location = new System.Drawing.Point(0, 0);
this.btnNewLayoutControlItem.Name = "btnNewLayoutControlItem";
this.btnNewLayoutControlItem.Size = new System.Drawing.Size(50, 26);
this.btnNewLayoutControlItem.TextSize = new System.Drawing.Size(0, 0);
this.btnNewLayoutControlItem.TextVisible = false;
this.btnNewLayoutControlItem.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never;
//
// filtersLayoutControlItem
//
this.filtersLayoutControlItem.Control = this.navigationBar;
this.filtersLayoutControlItem.CustomizationFormText = "layoutControlItem2";
this.filtersLayoutControlItem.Location = new System.Drawing.Point(0, 26);
this.filtersLayoutControlItem.Name = "layoutControlItem2";
this.filtersLayoutControlItem.Size = new System.Drawing.Size(50, 554);
this.filtersLayoutControlItem.TextSize = new System.Drawing.Size(0, 0);
this.filtersLayoutControlItem.TextVisible = false;
//
// EmployeesFilterPaneCollapsed
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.moduleLayout);
this.Name = "EmployeesFilterPaneCollapsed";
this.Size = new System.Drawing.Size(60, 600);
((System.ComponentModel.ISupportInitialize)(this.mvvmContext)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.moduleLayout)).EndInit();
this.moduleLayout.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.navigationBar)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.Root)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.btnNewLayoutControlItem)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.filtersLayoutControlItem)).EndInit();
this.ResumeLayout(false);
}
#endregion
private DevExpress.XtraEditors.SimpleButton btnNew;
private DevExpress.XtraBars.Navigation.OfficeNavigationBar navigationBar;
private DevExpress.XtraLayout.LayoutControl moduleLayout;
private XtraLayout.LayoutControlGroup Root;
private XtraLayout.LayoutControlItem btnNewLayoutControlItem;
private XtraLayout.LayoutControlItem filtersLayoutControlItem;
}
}

View File

@@ -0,0 +1,45 @@
namespace DevExpress.DevAV.Modules {
using DevExpress.DevAV.Presenters;
using DevExpress.DevAV.ViewModels;
using DevExpress.XtraLayout.Utils;
public partial class EmployeesFilterPaneCollapsed : BaseModuleControl, ISupportCompactLayout {
EmployeeFilterPanePresenter presenterCore;
public EmployeesFilterPaneCollapsed(EmployeeCollectionViewModel collectionViewModel)
: base(typeof(EmployeesFilterTreeViewModel), new object[] { collectionViewModel }) {
InitializeComponent();
presenterCore = CreatePresenter();
BindCommands();
}
protected override void OnDisposing() {
Presenter.Dispose();
base.OnDisposing();
}
public EmployeesFilterTreeViewModel ViewModel {
get { return GetViewModel<EmployeesFilterTreeViewModel>(); }
}
public EmployeeFilterPanePresenter Presenter {
get { return presenterCore; }
}
protected virtual EmployeeFilterPanePresenter CreatePresenter() {
return new EmployeeFilterPanePresenter(navigationBar, ViewModel);
}
protected virtual void BindCommands() {
btnNew.BindCommand(() => Presenter.CollectionViewModel.New(), Presenter.CollectionViewModel);
}
#region ISupportCompactLayout Members
bool compactLayout = true;
bool ISupportCompactLayout.Compact {
get { return compactLayout; }
set {
if(compactLayout == value) return;
compactLayout = value;
UpdateCompactLayout();
}
}
void UpdateCompactLayout() {
btnNewLayoutControlItem.Visibility = compactLayout ? LayoutVisibility.Never : LayoutVisibility.Always;
}
#endregion
}
}

View File

@@ -0,0 +1,123 @@
<?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>
<metadata name="mvvmContext.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
</root>

View File

@@ -0,0 +1,375 @@
namespace DevExpress.DevAV.Modules {
partial class EmployeesGroupFilter {
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing) {
if(disposing && (components != null)) {
components.Dispose();
}
base.Dispose(disposing);
}
#region Component Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent() {
this.components = new System.ComponentModel.Container();
this.okBtn = new DevExpress.XtraEditors.SimpleButton();
this.moduleLayout = new DevExpress.XtraLayout.LayoutControl();
this.gridControl = new DevExpress.XtraGrid.GridControl();
this.bindingSourceCollection = new System.Windows.Forms.BindingSource(this.components);
this.winExplorerView = new DevExpress.XtraGrid.Views.WinExplorer.WinExplorerView();
this.colPhoto = new DevExpress.XtraGrid.Columns.GridColumn();
this.colFullName = new DevExpress.XtraGrid.Columns.GridColumn();
this.colAddress = new DevExpress.XtraGrid.Columns.GridColumn();
this.colDepartment = new DevExpress.XtraGrid.Columns.GridColumn();
this.colCheck = new DevExpress.XtraGrid.Columns.GridColumn();
this.saveFilter = new DevExpress.XtraEditors.CheckEdit();
this.bindingSource = new System.Windows.Forms.BindingSource(this.components);
this.filterName = new DevExpress.XtraEditors.TextEdit();
this.cancelBtn = new DevExpress.XtraEditors.SimpleButton();
this.layoutControlGroup = new DevExpress.XtraLayout.LayoutControlGroup();
this.itemForControl = new DevExpress.XtraLayout.LayoutControlItem();
this.itemForOkBtn = new DevExpress.XtraLayout.LayoutControlItem();
this.itemForCancelBtn = new DevExpress.XtraLayout.LayoutControlItem();
this.itemForName = new DevExpress.XtraLayout.LayoutControlItem();
this.itemForSaveCheck = new DevExpress.XtraLayout.LayoutControlItem();
this.emptySpaceItem = new DevExpress.XtraLayout.EmptySpaceItem();
this.separator = new DevExpress.XtraLayout.SimpleSeparator();
((System.ComponentModel.ISupportInitialize)(this.moduleLayout)).BeginInit();
this.moduleLayout.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.gridControl)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSourceCollection)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.winExplorerView)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.saveFilter.Properties)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSource)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.filterName.Properties)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.itemForControl)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.itemForOkBtn)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.itemForCancelBtn)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.itemForName)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.itemForSaveCheck)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.separator)).BeginInit();
this.SuspendLayout();
//
// okBtn
//
this.okBtn.Location = new System.Drawing.Point(628, 466);
this.okBtn.Name = "okBtn";
this.okBtn.Size = new System.Drawing.Size(78, 22);
this.okBtn.StyleController = this.moduleLayout;
this.okBtn.TabIndex = 0;
this.okBtn.Text = "OK";
//
// moduleLayout
//
this.moduleLayout.AllowCustomization = false;
this.moduleLayout.Controls.Add(this.gridControl);
this.moduleLayout.Controls.Add(this.saveFilter);
this.moduleLayout.Controls.Add(this.filterName);
this.moduleLayout.Controls.Add(this.cancelBtn);
this.moduleLayout.Controls.Add(this.okBtn);
this.moduleLayout.Dock = System.Windows.Forms.DockStyle.Fill;
this.moduleLayout.Location = new System.Drawing.Point(0, 0);
this.moduleLayout.Name = "moduleLayout";
this.moduleLayout.Root = this.layoutControlGroup;
this.moduleLayout.Size = new System.Drawing.Size(800, 500);
this.moduleLayout.TabIndex = 0;
//
// gridControl
//
this.gridControl.DataSource = this.bindingSourceCollection;
this.gridControl.Location = new System.Drawing.Point(0, 0);
this.gridControl.MainView = this.winExplorerView;
this.gridControl.Name = "gridControl";
this.gridControl.Size = new System.Drawing.Size(800, 377);
this.gridControl.TabIndex = 6;
this.gridControl.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
this.winExplorerView});
//
// bindingSourceCollection
//
this.bindingSourceCollection.DataSource = typeof(DevExpress.DevAV.Employee);
//
// winExplorerView
//
this.winExplorerView.Appearance.ItemHovered.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
this.winExplorerView.Appearance.ItemHovered.Options.UseFont = true;
this.winExplorerView.Appearance.ItemNormal.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
this.winExplorerView.Appearance.ItemNormal.Options.UseFont = true;
this.winExplorerView.Appearance.ItemPressed.Font = new System.Drawing.Font("Segoe UI", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
this.winExplorerView.Appearance.ItemPressed.Options.UseFont = true;
this.winExplorerView.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder;
this.winExplorerView.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] {
this.colPhoto,
this.colFullName,
this.colAddress,
this.colDepartment,
this.colCheck});
this.winExplorerView.ColumnSet.CheckBoxColumn = this.colCheck;
this.winExplorerView.ColumnSet.DescriptionColumn = this.colAddress;
this.winExplorerView.ColumnSet.ExtraLargeImageColumn = this.colPhoto;
this.winExplorerView.ColumnSet.GroupColumn = this.colDepartment;
this.winExplorerView.ColumnSet.LargeImageColumn = this.colPhoto;
this.winExplorerView.ColumnSet.MediumImageColumn = this.colPhoto;
this.winExplorerView.ColumnSet.TextColumn = this.colFullName;
this.winExplorerView.GridControl = this.gridControl;
this.winExplorerView.GroupCount = 1;
this.winExplorerView.Name = "winExplorerView";
this.winExplorerView.OptionsBehavior.Editable = false;
this.winExplorerView.OptionsFind.AlwaysVisible = true;
this.winExplorerView.OptionsFind.FindNullPrompt = "Search Employees...";
this.winExplorerView.OptionsFind.ShowClearButton = false;
this.winExplorerView.OptionsFind.ShowCloseButton = false;
this.winExplorerView.OptionsFind.ShowFindButton = false;
this.winExplorerView.OptionsView.DrawCheckedItemsAsSelected = true;
this.winExplorerView.OptionsView.ShowCheckBoxes = true;
this.winExplorerView.OptionsView.ShowExpandCollapseButtons = true;
this.winExplorerView.OptionsView.Style = DevExpress.XtraGrid.Views.WinExplorer.WinExplorerViewStyle.Tiles;
//
// colPhoto
//
this.colPhoto.FieldName = "Photo";
this.colPhoto.Name = "colPhoto";
this.colPhoto.Visible = true;
this.colPhoto.VisibleIndex = 0;
//
// colFullName
//
this.colFullName.FieldName = "FullNameBindable";
this.colFullName.Name = "colFullName";
this.colFullName.Visible = true;
this.colFullName.VisibleIndex = 0;
//
// colAddress
//
this.colAddress.FieldName = "Address";
this.colAddress.Name = "colAddress";
this.colAddress.Visible = true;
this.colAddress.VisibleIndex = 1;
//
// colDepartment
//
this.colDepartment.FieldName = "Department";
this.colDepartment.Name = "colDepartment";
this.colDepartment.Visible = true;
this.colDepartment.VisibleIndex = 2;
//
// colCheck
//
this.colCheck.FieldName = "Check";
this.colCheck.Name = "colCheck";
this.colCheck.UnboundType = DevExpress.Data.UnboundColumnType.Boolean;
this.colCheck.Visible = true;
this.colCheck.VisibleIndex = 2;
//
// saveFilter
//
this.saveFilter.AutoSizeInLayoutControl = true;
this.saveFilter.DataBindings.Add(new System.Windows.Forms.Binding("EditValue", this.bindingSource, "Save", true));
this.saveFilter.Location = new System.Drawing.Point(12, 395);
this.saveFilter.Name = "saveFilter";
this.saveFilter.Properties.Caption = "Save for future use";
this.saveFilter.Size = new System.Drawing.Size(112, 15);
this.saveFilter.StyleController = this.moduleLayout;
this.saveFilter.TabIndex = 5;
//
// bindingSource
//
this.bindingSource.DataSource = typeof(DevExpress.DevAV.ViewModels.CustomFilterViewModel);
//
// filterName
//
this.filterName.DataBindings.Add(new System.Windows.Forms.Binding("EditValue", this.bindingSource, "Name", true));
this.filterName.EditValue = "";
this.filterName.Location = new System.Drawing.Point(12, 414);
this.filterName.Name = "filterName";
this.filterName.Properties.NullValuePrompt = "Enter a name for your group";
this.filterName.Properties.NullValuePromptShowForEmptyValue = true;
this.filterName.Size = new System.Drawing.Size(776, 20);
this.filterName.StyleController = this.moduleLayout;
this.filterName.TabIndex = 4;
//
// cancelBtn
//
this.cancelBtn.Location = new System.Drawing.Point(710, 466);
this.cancelBtn.Name = "cancelBtn";
this.cancelBtn.Size = new System.Drawing.Size(78, 22);
this.cancelBtn.StyleController = this.moduleLayout;
this.cancelBtn.TabIndex = 1;
this.cancelBtn.Text = "Cancel";
//
// layoutControlGroup
//
this.layoutControlGroup.CustomizationFormText = "layoutControlGroup1";
this.layoutControlGroup.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.False;
this.layoutControlGroup.GroupBordersVisible = false;
this.layoutControlGroup.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
this.itemForControl,
this.itemForOkBtn,
this.itemForCancelBtn,
this.itemForName,
this.itemForSaveCheck,
this.emptySpaceItem,
this.separator});
this.layoutControlGroup.Location = new System.Drawing.Point(0, 0);
this.layoutControlGroup.Name = "layoutControlGroup1";
this.layoutControlGroup.OptionsItemText.TextToControlDistance = 6;
this.layoutControlGroup.Size = new System.Drawing.Size(800, 500);
this.layoutControlGroup.Text = "layoutControlGroup1";
//
// itemForControl
//
this.itemForControl.Control = this.gridControl;
this.itemForControl.CustomizationFormText = "itemForControl";
this.itemForControl.Location = new System.Drawing.Point(0, 0);
this.itemForControl.Name = "itemForControl";
this.itemForControl.Padding = new DevExpress.XtraLayout.Utils.Padding(0, 0, 0, 0);
this.itemForControl.Size = new System.Drawing.Size(800, 377);
this.itemForControl.Text = "itemForControl";
this.itemForControl.TextSize = new System.Drawing.Size(0, 0);
this.itemForControl.TextToControlDistance = 0;
this.itemForControl.TextVisible = false;
//
// itemForOkBtn
//
this.itemForOkBtn.Control = this.okBtn;
this.itemForOkBtn.CustomizationFormText = "itemForOkBtn";
this.itemForOkBtn.Location = new System.Drawing.Point(616, 454);
this.itemForOkBtn.MaxSize = new System.Drawing.Size(92, 46);
this.itemForOkBtn.MinSize = new System.Drawing.Size(92, 46);
this.itemForOkBtn.Name = "itemForOkBtn";
this.itemForOkBtn.Padding = new DevExpress.XtraLayout.Utils.Padding(12, 2, 12, 12);
this.itemForOkBtn.Size = new System.Drawing.Size(92, 46);
this.itemForOkBtn.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom;
this.itemForOkBtn.Text = "itemForOkBtn";
this.itemForOkBtn.TextSize = new System.Drawing.Size(0, 0);
this.itemForOkBtn.TextToControlDistance = 0;
this.itemForOkBtn.TextVisible = false;
//
// itemForCancelBtn
//
this.itemForCancelBtn.Control = this.cancelBtn;
this.itemForCancelBtn.CustomizationFormText = "itemForCancelBtn";
this.itemForCancelBtn.Location = new System.Drawing.Point(708, 454);
this.itemForCancelBtn.MaxSize = new System.Drawing.Size(92, 46);
this.itemForCancelBtn.MinSize = new System.Drawing.Size(92, 46);
this.itemForCancelBtn.Name = "itemForCancelBtn";
this.itemForCancelBtn.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 12, 12, 12);
this.itemForCancelBtn.Size = new System.Drawing.Size(92, 46);
this.itemForCancelBtn.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom;
this.itemForCancelBtn.Text = "itemForCancelBtn";
this.itemForCancelBtn.TextSize = new System.Drawing.Size(0, 0);
this.itemForCancelBtn.TextToControlDistance = 0;
this.itemForCancelBtn.TextVisible = false;
//
// itemForName
//
this.itemForName.Control = this.filterName;
this.itemForName.CustomizationFormText = "itemForName";
this.itemForName.Location = new System.Drawing.Point(0, 410);
this.itemForName.Name = "itemForName";
this.itemForName.Padding = new DevExpress.XtraLayout.Utils.Padding(12, 12, 4, 20);
this.itemForName.Size = new System.Drawing.Size(800, 44);
this.itemForName.Text = "itemForName";
this.itemForName.TextSize = new System.Drawing.Size(0, 0);
this.itemForName.TextToControlDistance = 0;
this.itemForName.TextVisible = false;
//
// itemForSaveCheck
//
this.itemForSaveCheck.Control = this.saveFilter;
this.itemForSaveCheck.CustomizationFormText = "itemForSaveCheck";
this.itemForSaveCheck.Location = new System.Drawing.Point(0, 379);
this.itemForSaveCheck.Name = "itemForSaveCheck";
this.itemForSaveCheck.Padding = new DevExpress.XtraLayout.Utils.Padding(12, 12, 16, 0);
this.itemForSaveCheck.Size = new System.Drawing.Size(800, 31);
this.itemForSaveCheck.Text = "itemForSaveCheck";
this.itemForSaveCheck.TextSize = new System.Drawing.Size(0, 0);
this.itemForSaveCheck.TextToControlDistance = 0;
this.itemForSaveCheck.TextVisible = false;
//
// emptySpaceItem
//
this.emptySpaceItem.AllowHotTrack = false;
this.emptySpaceItem.CustomizationFormText = "emptySpaceItem1";
this.emptySpaceItem.Location = new System.Drawing.Point(0, 454);
this.emptySpaceItem.Name = "emptySpaceItem1";
this.emptySpaceItem.Size = new System.Drawing.Size(616, 46);
this.emptySpaceItem.Text = "emptySpaceItem1";
this.emptySpaceItem.TextSize = new System.Drawing.Size(0, 0);
//
// separator
//
this.separator.AllowHotTrack = false;
this.separator.CustomizationFormText = "simpleSeparator1";
this.separator.Location = new System.Drawing.Point(0, 377);
this.separator.Name = "simpleSeparator1";
this.separator.Size = new System.Drawing.Size(800, 2);
this.separator.Text = "simpleSeparator1";
//
// EmployeesGroupFilter
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.moduleLayout);
this.Name = "EmployeesGroupFilter";
this.Size = new System.Drawing.Size(800, 500);
((System.ComponentModel.ISupportInitialize)(this.moduleLayout)).EndInit();
this.moduleLayout.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.gridControl)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSourceCollection)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.winExplorerView)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.saveFilter.Properties)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSource)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.filterName.Properties)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.itemForControl)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.itemForOkBtn)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.itemForCancelBtn)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.itemForName)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.itemForSaveCheck)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.separator)).EndInit();
this.ResumeLayout(false);
}
#endregion
private DevExpress.XtraEditors.SimpleButton okBtn;
private DevExpress.XtraEditors.SimpleButton cancelBtn;
private DevExpress.XtraLayout.LayoutControl moduleLayout;
private XtraLayout.LayoutControlGroup layoutControlGroup;
private XtraEditors.TextEdit filterName;
private XtraEditors.CheckEdit saveFilter;
private System.Windows.Forms.BindingSource bindingSource;
private XtraGrid.GridControl gridControl;
private XtraGrid.Views.WinExplorer.WinExplorerView winExplorerView;
private System.Windows.Forms.BindingSource bindingSourceCollection;
private XtraGrid.Columns.GridColumn colPhoto;
private XtraGrid.Columns.GridColumn colFullName;
private XtraGrid.Columns.GridColumn colAddress;
private XtraGrid.Columns.GridColumn colDepartment;
private XtraGrid.Columns.GridColumn colCheck;
private XtraLayout.LayoutControlItem itemForControl;
private XtraLayout.LayoutControlItem itemForOkBtn;
private XtraLayout.LayoutControlItem itemForCancelBtn;
private XtraLayout.LayoutControlItem itemForName;
private XtraLayout.LayoutControlItem itemForSaveCheck;
private XtraLayout.EmptySpaceItem emptySpaceItem;
private XtraLayout.SimpleSeparator separator;
}
}

View File

@@ -0,0 +1,45 @@
namespace DevExpress.DevAV.Modules {
using DevExpress.DevAV.Presenters;
using DevExpress.DevAV.ViewModels;
public partial class EmployeesGroupFilter : BaseModuleControl {
EmployeesGroupFilterPresenter presenterCore;
public EmployeesGroupFilter(GroupFilterViewModel groupFilterViewModel)
: base(typeof(GroupFilterViewModel), groupFilterViewModel) {
InitializeComponent();
GroupFiltersListViewAppearances.Apply(winExplorerView);
presenterCore = CreatePresenter();
//
BindEditors();
BindCommands();
}
protected override void OnDisposing() {
Presenter.Dispose();
base.OnDisposing();
}
protected override void OnLoad(System.EventArgs e) {
base.OnLoad(e);
Presenter.Load();
}
public EmployeesGroupFilterPresenter Presenter {
get { return presenterCore; }
}
protected virtual EmployeesGroupFilterPresenter CreatePresenter() {
return new EmployeesGroupFilterPresenter(winExplorerView, ViewModel);
}
public GroupFilterViewModel ViewModel {
get { return GetViewModel<GroupFilterViewModel>(); }
}
void BindEditors() {
bindingSource.DataSource = ViewModel;
//
var errorProvider = new DevExpress.XtraEditors.DXErrorProvider.DXErrorProvider();
errorProvider.ContainerControl = this;
errorProvider.DataSource = bindingSource;
}
void BindCommands() {
this.okBtn.BindCommand(() => ViewModel.OK(), ViewModel);
this.cancelBtn.BindCommand(() => ViewModel.Cancel(), ViewModel);
}
}
}

View File

@@ -0,0 +1,126 @@
<?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>
<metadata name="bindingSourceCollection.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>148, 17</value>
</metadata>
<metadata name="bindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
</root>

View File

@@ -0,0 +1,272 @@
namespace DevExpress.DevAV.Modules {
partial class EmployeesPeek {
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing) {
if(disposing && (components != null)) {
components.Dispose();
}
base.Dispose(disposing);
}
#region Component Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent() {
this.components = new System.ComponentModel.Container();
this.moduleLayout = new DevExpress.XtraLayout.LayoutControl();
this.searchControl = new DevExpress.XtraEditors.SearchControl();
this.gridControl = new DevExpress.XtraGrid.GridControl();
this.bindingSource = new System.Windows.Forms.BindingSource(this.components);
this.gridView = new DevExpress.XtraGrid.Views.BandedGrid.AdvBandedGridView();
this.gridBand1 = new DevExpress.XtraGrid.Views.BandedGrid.GridBand();
this.colPhoto = new DevExpress.XtraGrid.Views.BandedGrid.BandedGridColumn();
this.repositoryItemPictureEdit1 = new DevExpress.XtraEditors.Repository.RepositoryItemPictureEdit();
this.gridBand2 = new DevExpress.XtraGrid.Views.BandedGrid.GridBand();
this.colFullName = new DevExpress.XtraGrid.Views.BandedGrid.BandedGridColumn();
this.colTitle = new DevExpress.XtraGrid.Views.BandedGrid.BandedGridColumn();
this.Root = new DevExpress.XtraLayout.LayoutControlGroup();
this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem();
this.layoutControlItem2 = new DevExpress.XtraLayout.LayoutControlItem();
this.simpleLabelItem1 = new DevExpress.XtraLayout.SimpleLabelItem();
((System.ComponentModel.ISupportInitialize)(this.moduleLayout)).BeginInit();
this.moduleLayout.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.searchControl.Properties)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.gridControl)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSource)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.gridView)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.repositoryItemPictureEdit1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.Root)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.simpleLabelItem1)).BeginInit();
this.SuspendLayout();
//
// moduleLayout
//
this.moduleLayout.AllowCustomization = false;
this.moduleLayout.Controls.Add(this.searchControl);
this.moduleLayout.Controls.Add(this.gridControl);
this.moduleLayout.Dock = System.Windows.Forms.DockStyle.Fill;
this.moduleLayout.Location = new System.Drawing.Point(0, 0);
this.moduleLayout.Margin = new System.Windows.Forms.Padding(0);
this.moduleLayout.Name = "moduleLayout";
this.moduleLayout.Root = this.Root;
this.moduleLayout.Size = new System.Drawing.Size(250, 330);
this.moduleLayout.TabIndex = 1;
//
// searchControl
//
this.searchControl.Client = this.gridControl;
this.searchControl.Location = new System.Drawing.Point(10, 2);
this.searchControl.Name = "searchControl";
this.searchControl.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
new DevExpress.XtraEditors.Repository.ClearButton(),
new DevExpress.XtraEditors.Repository.SearchButton()});
this.searchControl.Size = new System.Drawing.Size(230, 20);
this.searchControl.StyleController = this.moduleLayout;
this.searchControl.TabIndex = 2;
//
// gridControl
//
this.gridControl.DataSource = this.bindingSource;
this.gridControl.Location = new System.Drawing.Point(10, 55);
this.gridControl.MainView = this.gridView;
this.gridControl.Name = "gridControl";
this.gridControl.RepositoryItems.AddRange(new DevExpress.XtraEditors.Repository.RepositoryItem[] {
this.repositoryItemPictureEdit1});
this.gridControl.ShowOnlyPredefinedDetails = true;
this.gridControl.Size = new System.Drawing.Size(230, 265);
this.gridControl.TabIndex = 0;
this.gridControl.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
this.gridView});
//
// bindingSource
//
this.bindingSource.DataSource = typeof(DevExpress.DevAV.Employee);
//
// gridView
//
this.gridView.Bands.AddRange(new DevExpress.XtraGrid.Views.BandedGrid.GridBand[] {
this.gridBand1,
this.gridBand2});
this.gridView.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder;
this.gridView.Columns.AddRange(new DevExpress.XtraGrid.Views.BandedGrid.BandedGridColumn[] {
this.colPhoto,
this.colFullName,
this.colTitle});
this.gridView.GridControl = this.gridControl;
this.gridView.Name = "gridView";
this.gridView.OptionsBehavior.Editable = false;
this.gridView.OptionsFind.AllowFindPanel = false;
this.gridView.OptionsView.ColumnAutoWidth = true;
this.gridView.OptionsView.ShowBands = false;
this.gridView.OptionsView.ShowColumnHeaders = false;
this.gridView.OptionsView.ShowGroupPanel = false;
this.gridView.OptionsView.ShowHorizontalLines = DevExpress.Utils.DefaultBoolean.False;
this.gridView.OptionsView.ShowIndicator = false;
this.gridView.OptionsView.ShowVerticalLines = DevExpress.Utils.DefaultBoolean.False;
this.gridView.RowHeight = 25;
//
// gridBand1
//
this.gridBand1.Columns.Add(this.colPhoto);
this.gridBand1.Name = "gridBand1";
this.gridBand1.OptionsBand.AllowSize = false;
this.gridBand1.OptionsBand.FixedWidth = true;
this.gridBand1.VisibleIndex = 0;
this.gridBand1.Width = 50;
//
// colPhoto
//
this.colPhoto.ColumnEdit = this.repositoryItemPictureEdit1;
this.colPhoto.FieldName = "Photo";
this.colPhoto.Name = "colPhoto";
this.colPhoto.OptionsColumn.AllowEdit = false;
this.colPhoto.OptionsColumn.AllowFocus = false;
this.colPhoto.RowCount = 2;
this.colPhoto.Visible = true;
this.colPhoto.Width = 50;
//
// repositoryItemPictureEdit1
//
this.repositoryItemPictureEdit1.Name = "repositoryItemPictureEdit1";
this.repositoryItemPictureEdit1.Padding = new System.Windows.Forms.Padding(4);
this.repositoryItemPictureEdit1.PictureInterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
this.repositoryItemPictureEdit1.SizeMode = DevExpress.XtraEditors.Controls.PictureSizeMode.Squeeze;
this.repositoryItemPictureEdit1.OptionsMask.MaskType = XtraEditors.Controls.PictureEditMaskType.Circle;
//
// gridBand2
//
this.gridBand2.Columns.Add(this.colFullName);
this.gridBand2.Columns.Add(this.colTitle);
this.gridBand2.Name = "gridBand2";
this.gridBand2.VisibleIndex = 1;
this.gridBand2.Width = 218;
//
// colFullName
//
this.colFullName.AppearanceCell.Font = new System.Drawing.Font("Segoe UI", 12F);
this.colFullName.AppearanceCell.Options.UseFont = true;
this.colFullName.FieldName = "FullNameBindable";
this.colFullName.Name = "colFullName";
this.colFullName.OptionsColumn.AllowEdit = false;
this.colFullName.OptionsColumn.AllowFocus = false;
this.colFullName.Visible = true;
this.colFullName.Width = 218;
//
// colTitle
//
this.colTitle.AppearanceCell.Options.UseTextOptions = true;
this.colTitle.AppearanceCell.TextOptions.VAlignment = DevExpress.Utils.VertAlignment.Top;
this.colTitle.FieldName = "Title";
this.colTitle.Name = "colTitle";
this.colTitle.OptionsColumn.AllowEdit = false;
this.colTitle.OptionsColumn.AllowFocus = false;
this.colTitle.RowIndex = 1;
this.colTitle.Visible = true;
this.colTitle.Width = 218;
//
// Root
//
this.Root.CustomizationFormText = "Root";
this.Root.EnableIndentsWithoutBorders = DevExpress.Utils.DefaultBoolean.True;
this.Root.GroupBordersVisible = false;
this.Root.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
this.layoutControlItem1,
this.layoutControlItem2,
this.simpleLabelItem1});
this.Root.Location = new System.Drawing.Point(0, 0);
this.Root.Name = "Root";
this.Root.Padding = new DevExpress.XtraLayout.Utils.Padding(8, 8, 0, 8);
this.Root.Size = new System.Drawing.Size(250, 330);
this.Root.Text = "Root";
//
// layoutControlItem1
//
this.layoutControlItem1.Control = this.gridControl;
this.layoutControlItem1.CustomizationFormText = "layoutControlItem1";
this.layoutControlItem1.Location = new System.Drawing.Point(0, 53);
this.layoutControlItem1.Name = "layoutControlItem1";
this.layoutControlItem1.Size = new System.Drawing.Size(234, 269);
this.layoutControlItem1.Text = "layoutControlItem1";
this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0);
this.layoutControlItem1.TextToControlDistance = 0;
this.layoutControlItem1.TextVisible = false;
//
// layoutControlItem2
//
this.layoutControlItem2.Control = this.searchControl;
this.layoutControlItem2.CustomizationFormText = "layoutControlItem2";
this.layoutControlItem2.Location = new System.Drawing.Point(0, 0);
this.layoutControlItem2.Name = "layoutControlItem2";
this.layoutControlItem2.Size = new System.Drawing.Size(234, 24);
this.layoutControlItem2.Text = "layoutControlItem2";
this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0);
this.layoutControlItem2.TextToControlDistance = 0;
this.layoutControlItem2.TextVisible = false;
//
// simpleLabelItem1
//
this.simpleLabelItem1.AllowHotTrack = false;
this.simpleLabelItem1.CustomizationFormText = "EMPLOYEES";
this.simpleLabelItem1.Location = new System.Drawing.Point(0, 24);
this.simpleLabelItem1.Name = "simpleLabelItem1";
this.simpleLabelItem1.Padding = new DevExpress.XtraLayout.Utils.Padding(2, 2, 8, 8);
this.simpleLabelItem1.Size = new System.Drawing.Size(234, 29);
this.simpleLabelItem1.Text = "EMPLOYEES";
this.simpleLabelItem1.TextSize = new System.Drawing.Size(57, 13);
//
// EmployeesPeek
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.moduleLayout);
this.Margin = new System.Windows.Forms.Padding(0);
this.Name = "EmployeesPeek";
this.Size = new System.Drawing.Size(250, 330);
((System.ComponentModel.ISupportInitialize)(this.moduleLayout)).EndInit();
this.moduleLayout.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.searchControl.Properties)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.gridControl)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.bindingSource)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.gridView)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.repositoryItemPictureEdit1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.Root)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.layoutControlItem2)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.simpleLabelItem1)).EndInit();
this.ResumeLayout(false);
}
#endregion
private XtraEditors.SearchControl searchControl;
private XtraLayout.LayoutControl moduleLayout;
private XtraGrid.GridControl gridControl;
private System.Windows.Forms.BindingSource bindingSource;
private XtraEditors.Repository.RepositoryItemPictureEdit repositoryItemPictureEdit1;
private XtraGrid.Views.BandedGrid.AdvBandedGridView gridView;
private XtraGrid.Views.BandedGrid.BandedGridColumn colPhoto;
private XtraGrid.Views.BandedGrid.BandedGridColumn colFullName;
private XtraGrid.Views.BandedGrid.BandedGridColumn colTitle;
private XtraGrid.Views.BandedGrid.GridBand gridBand1;
private XtraGrid.Views.BandedGrid.GridBand gridBand2;
private XtraLayout.LayoutControlGroup Root;
private XtraLayout.LayoutControlItem layoutControlItem1;
private XtraLayout.LayoutControlItem layoutControlItem2;
private XtraLayout.SimpleLabelItem simpleLabelItem1;
}
}

View File

@@ -0,0 +1,30 @@
namespace DevExpress.DevAV.Modules {
using DevExpress.DevAV.Presenters;
using DevExpress.DevAV.ViewModels;
using DevExpress.Utils.MVVM;
public partial class EmployeesPeek : BaseModuleControl {
EmployeePeekListPresenter presenterCore;
IPropertyBinding entitiesBinding;
public EmployeesPeek()
: base(typeof(EmployeeCollectionViewModel)) {
InitializeComponent();
entitiesBinding = mvvmContext.SetBinding(gridControl, g => g.DataSource, "Entities");
presenterCore = CreatePresenter();
}
protected override void OnDisposing() {
Presenter.Dispose();
entitiesBinding.Dispose();
base.OnDisposing();
}
public EmployeeCollectionViewModel ViewModel {
get { return GetViewModel<EmployeeCollectionViewModel>(); }
}
public EmployeePeekListPresenter Presenter {
get { return presenterCore; }
}
protected virtual EmployeePeekListPresenter CreatePresenter() {
return new EmployeePeekListPresenter(gridView, ViewModel);
}
}
}

View File

@@ -0,0 +1,123 @@
<?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>
<metadata name="bindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
</root>

View File

@@ -0,0 +1,67 @@
namespace DevExpress.DevAV.Modules {
partial class EmployeesPrint {
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing) {
if(disposing && (components != null)) {
components.Dispose();
}
base.Dispose(disposing);
}
#region Component Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent() {
this.previewControl = new DevExpress.DevAV.ReportPreviewControl();
this.printSettingsControl = new DevExpress.DevAV.ReportPrintControl();
this.SuspendLayout();
//
// previewControl
//
this.previewControl.Dock = System.Windows.Forms.DockStyle.Fill;
this.previewControl.Location = new System.Drawing.Point(310, 0);
this.previewControl.Name = "previewControl";
this.previewControl.Size = new System.Drawing.Size(714, 600);
this.previewControl.TabIndex = 0;
this.previewControl.Visible = false;
//
// printSettingsControl
//
this.printSettingsControl.Dock = System.Windows.Forms.DockStyle.Left;
this.printSettingsControl.Location = new System.Drawing.Point(0, 0);
this.printSettingsControl.Name = "printSettingsControl";
this.printSettingsControl.SelectedPrinterName = "";
this.printSettingsControl.Size = new System.Drawing.Size(310, 600);
this.printSettingsControl.TabIndex = 1;
this.printSettingsControl.PrintClick += new System.EventHandler(this.settingsControl_PrintClick);
this.printSettingsControl.PrintOptionsClick += new System.EventHandler(this.settingsControl_PrintOptionsClick);
//
// EmployeesPrint
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.previewControl);
this.Controls.Add(this.printSettingsControl);
this.Name = "EmployeesPrint";
this.Size = new System.Drawing.Size(1024, 600);
this.ResumeLayout(false);
}
#endregion
private ReportPreviewControl previewControl;
private ReportPrintControl printSettingsControl;
}
}

View File

@@ -0,0 +1,138 @@
namespace DevExpress.DevAV.Modules {
using System;
using System.Collections.Generic;
using System.Windows.Forms;
using DevExpress.DevAV;
using DevExpress.DevAV.ViewModels;
using DevExpress.XtraPrinting;
using DevExpress.XtraReports.Parameters;
using DevExpress.XtraReports.UI;
public partial class EmployeesPrint : BaseModuleControl {
XtraReport report;
public EmployeesPrint()
: base(typeof(EmployeesReportViewModel)) {
InitializeComponent();
ViewModel.ReportTypeChanged += ViewModel_ReportTypeChanged;
ViewModel.ReportEntityKeyChanged += ViewModel_ReportEntityKeyChanged;
ViewModel.Reload += ViewModel_Reload;
printSettingsControl.SelectedPrinterName = PageSettingsHelper.DefaultPageSettings.PrinterSettings.PrinterName;
}
protected override void OnMVVMContextReleasing() {
ViewModel.Reload -= ViewModel_Reload;
ViewModel.ReportEntityKeyChanged -= ViewModel_ReportEntityKeyChanged;
ViewModel.ReportTypeChanged -= ViewModel_ReportTypeChanged;
}
protected override void OnDisposing() {
previewControl.DocumentSource = null;
report = null;
ReleaseModuleReports<EmployeeReportType>();
base.OnDisposing();
}
protected override void OnLoad(EventArgs e) {
base.OnLoad(e);
if(ViewModel != null)
ViewModel.OnLoad();
UpdatePreview();
}
public EmployeesReportViewModel ViewModel {
get { return GetViewModel<EmployeesReportViewModel>(); }
}
public EmployeeCollectionViewModel CollectionViewModel {
get { return GetParentViewModel<EmployeeCollectionViewModel>(); }
}
Parameter GetParameter(string name, Type type) {
if(report != null) {
if(report.Parameters[name] == null || report.Parameters[name].Type != type)
throw new Exception("Invalid report parameter.");
return report.Parameters[name];
}
return null;
}
Parameter ParamAscending {
get { return GetParameter("paramAscending", typeof(bool)); }
}
Parameter ParamEvaluations {
get { return GetParameter("paramEvaluations", typeof(bool)); }
}
Parameter ParamDueDate {
get { return GetParameter("paramDueDate", typeof(bool)); }
}
void ViewModel_ReportEntityKeyChanged(object sender, EventArgs e) {
UpdatePreview();
}
void ViewModel_ReportTypeChanged(object sender, System.EventArgs e) {
UpdatePreview();
}
void ViewModel_Reload(object sender, EventArgs e) {
UpdatePreview();
}
void UpdatePreview() {
if(ViewModel == null || ViewModel.ReportType == EmployeeReportType.None)
return;
this.report = CreateAndInitializeReport(ViewModel.ReportType);
previewControl.DocumentSource = report;
CreateDocument(report);
printSettingsControl.SetSettings(GetSettingsEditor(ViewModel.ReportType));
printSettingsControl.PrintEnabled = false;
}
Control GetSettingsEditor(EmployeeReportType reportType) {
switch(reportType) {
case EmployeeReportType.Profile:
return new EvaluationsControl(value => SetParameter(ParamEvaluations, value), (bool)ParamEvaluations.Value);
case EmployeeReportType.Directory:
case EmployeeReportType.Summary:
return new SortOrderControl(value => SetParameter(ParamAscending, value), (bool)ParamAscending.Value);
case EmployeeReportType.TaskList:
return new TasksSortControl(value => SetParameter(ParamDueDate, value), (bool)ParamDueDate.Value);
}
return null;
}
void SetParameter(Parameter parameter, bool value) {
if(parameter != null) {
parameter.Value = value;
CreateDocument(report);
}
}
XtraReport CreateAndInitializeReport(EmployeeReportType reportType) {
var locator = GetService<Services.IReportLocator>();
var report = locator.GetReport(reportType) as XtraReport;
switch(reportType) {
case EmployeeReportType.Profile:
report.DataSource = new List<Employee> { CollectionViewModel.SelectedEntity };
break;
case EmployeeReportType.TaskList:
report.DataSource = ViewModel.Tasks;
break;
case EmployeeReportType.Directory:
case EmployeeReportType.Summary:
report.DataSource = CollectionViewModel.Entities;
break;
}
return report;
}
void CreateDocument(XtraReport report) {
if(report != null) {
report.PrintingSystem.ClearContent();
report.CreateDocument(true);
report.PrintingSystem.AfterBuildPages -= PrintingSystem_AfterBuildPages;
report.PrintingSystem.AfterBuildPages += PrintingSystem_AfterBuildPages;
}
}
void PrintingSystem_AfterBuildPages(object sender, EventArgs e) {
printSettingsControl.PrintEnabled = ((PrintingSystemBase)sender).PageCount > 0;
previewControl.Visible = true;
}
void settingsControl_PrintClick(object sender, EventArgs e) {
using(ReportPrintTool tool = new ReportPrintTool(report)) {
tool.Print(printSettingsControl.SelectedPrinterName);
}
}
void settingsControl_PrintOptionsClick(object sender, EventArgs e) {
using(ReportPrintTool tool = new ReportPrintTool(report)) {
tool.PrintDialog(FindForm(), LookAndFeel);
}
}
}
}

View 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>