Reconfigure for GIT
@@ -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>
|
||||
@@ -0,0 +1,232 @@
|
||||
Imports Microsoft.VisualBasic
|
||||
Imports System
|
||||
Imports System.Collections.Generic
|
||||
Imports System.ComponentModel
|
||||
Imports DevExpress.ExpressApp.Web
|
||||
Imports DevExpress.ExpressApp
|
||||
Imports SISBusiness.Module
|
||||
Imports DevExpress.Data.Filtering
|
||||
Imports DevExpress.ExpressApp.Xpo
|
||||
Imports DevExpress.Persistent.BaseImpl
|
||||
|
||||
Partial Public Class SISBusinessSupportAspNetApplication
|
||||
Inherits WebApplication
|
||||
|
||||
Private _ocur As Xpo.XPObjectSpace
|
||||
|
||||
Private module1 As DevExpress.ExpressApp.SystemModule.SystemModule
|
||||
Private module2 As DevExpress.ExpressApp.Web.SystemModule.SystemAspNetModule
|
||||
|
||||
Private module5 As DevExpress.ExpressApp.Validation.ValidationModule
|
||||
Private module6 As DevExpress.ExpressApp.Objects.BusinessClassLibraryCustomizationModule
|
||||
Private securityModule1 As DevExpress.ExpressApp.Security.SecurityModule
|
||||
|
||||
Friend WithEvents AuditTrailModule1 As DevExpress.ExpressApp.AuditTrail.AuditTrailModule
|
||||
Friend WithEvents ConditionalAppearanceModule1 As DevExpress.ExpressApp.ConditionalAppearance.ConditionalAppearanceModule
|
||||
Friend WithEvents FileAttachmentsAspNetModule1 As DevExpress.ExpressApp.FileAttachments.Web.FileAttachmentsAspNetModule
|
||||
Friend WithEvents HtmlPropertyEditorAspNetModule1 As DevExpress.ExpressApp.HtmlPropertyEditor.Web.HtmlPropertyEditorAspNetModule
|
||||
Friend WithEvents ViewVariantsModule1 As DevExpress.ExpressApp.ViewVariantsModule.ViewVariantsModule
|
||||
Friend WithEvents SecurityComplex1 As DevExpress.ExpressApp.Security.SecurityComplex
|
||||
Friend WithEvents AuthenticationStandard1 As DevExpress.ExpressApp.Security.AuthenticationStandard
|
||||
Friend WithEvents ChartAspNetModule1 As DevExpress.ExpressApp.Chart.Web.ChartAspNetModule
|
||||
Friend WithEvents ChartModule1 As DevExpress.ExpressApp.Chart.ChartModule
|
||||
Friend WithEvents CloneObjectModule1 As DevExpress.ExpressApp.CloneObject.CloneObjectModule
|
||||
Friend WithEvents PivotChartAspNetModule1 As DevExpress.ExpressApp.PivotChart.Web.PivotChartAspNetModule
|
||||
Friend WithEvents PivotChartModuleBase1 As DevExpress.ExpressApp.PivotChart.PivotChartModuleBase
|
||||
Friend WithEvents PivotGridAspNetModule1 As DevExpress.ExpressApp.PivotGrid.Web.PivotGridAspNetModule
|
||||
Friend WithEvents PivotGridModule1 As DevExpress.ExpressApp.PivotGrid.PivotGridModule
|
||||
Friend WithEvents TreeListEditorsAspNetModule1 As DevExpress.ExpressApp.TreeListEditors.Web.TreeListEditorsAspNetModule
|
||||
Friend WithEvents TreeListEditorsModuleBase1 As DevExpress.ExpressApp.TreeListEditors.TreeListEditorsModuleBase
|
||||
Friend WithEvents ReportsAspNetModule1 As DevExpress.ExpressApp.Reports.Web.ReportsAspNetModule
|
||||
Friend WithEvents ReportsModule1 As DevExpress.ExpressApp.Reports.ReportsModule
|
||||
Friend WithEvents SchedulerAspNetModule1 As DevExpress.ExpressApp.Scheduler.Web.SchedulerAspNetModule
|
||||
Friend WithEvents SchedulerModuleBase1 As DevExpress.ExpressApp.Scheduler.SchedulerModuleBase
|
||||
Friend WithEvents SisBusinessModule1 As SISBusiness.Module.SISBusinessModule
|
||||
|
||||
|
||||
Friend WithEvents KpiModule1 As DevExpress.ExpressApp.Kpi.KpiModule
|
||||
Friend WithEvents SisBusinessAspNetModule1 As SISBusiness.Module.Web.SISBusinessAspNetModule
|
||||
Friend WithEvents ReportsModuleV21 As DevExpress.ExpressApp.ReportsV2.ReportsModuleV2
|
||||
Friend WithEvents NotificationsModule1 As DevExpress.ExpressApp.Notifications.NotificationsModule
|
||||
Friend WithEvents ReportsAspNetModuleV21 As DevExpress.ExpressApp.ReportsV2.Web.ReportsAspNetModuleV2
|
||||
Private sqlConnection1 As System.Data.SqlClient.SqlConnection
|
||||
|
||||
Public Sub New()
|
||||
InitializeComponent()
|
||||
End Sub
|
||||
|
||||
Private Sub SISBusinessSupportAspNetApplication_DatabaseVersionMismatch(ByVal sender As Object, ByVal e As DevExpress.ExpressApp.DatabaseVersionMismatchEventArgs) Handles MyBase.DatabaseVersionMismatch
|
||||
#If EASYTEST Then
|
||||
e.Updater.Update()
|
||||
e.Handled = True
|
||||
#Else
|
||||
If System.Diagnostics.Debugger.IsAttached Then
|
||||
e.Updater.Update()
|
||||
e.Handled = True
|
||||
Else
|
||||
Throw New InvalidOperationException( _
|
||||
"The application cannot connect to the specified database, because the latter doesn't exist or its version is older than that of the application." & Constants.vbCrLf & _
|
||||
"This error occurred because the automatic database update was disabled when the application was started without debugging." & Constants.vbCrLf & _
|
||||
"To avoid this error, you should either start the application under Visual Studio in debug mode, or modify the " & _
|
||||
"source code of the 'DatabaseVersionMismatch' event handler to enable automatic database update, " & _
|
||||
"or manually create a database using the 'DBUpdater' tool." & Constants.vbCrLf & _
|
||||
"Anyway, refer to the 'Update Application and Database Versions' help topic at http://www.devexpress.com/Help/?document=ExpressApp/CustomDocument2795.htm " & _
|
||||
"for more detailed information. If this doesn't help, please contact our Support Team at http://www.devexpress.com/Support/Center/")
|
||||
End If
|
||||
#End If
|
||||
End Sub
|
||||
|
||||
Private Sub InitializeComponent()
|
||||
Me.module1 = New DevExpress.ExpressApp.SystemModule.SystemModule()
|
||||
Me.module2 = New DevExpress.ExpressApp.Web.SystemModule.SystemAspNetModule()
|
||||
Me.module5 = New DevExpress.ExpressApp.Validation.ValidationModule()
|
||||
Me.module6 = New DevExpress.ExpressApp.Objects.BusinessClassLibraryCustomizationModule()
|
||||
Me.securityModule1 = New DevExpress.ExpressApp.Security.SecurityModule()
|
||||
Me.sqlConnection1 = New System.Data.SqlClient.SqlConnection()
|
||||
Me.AuditTrailModule1 = New DevExpress.ExpressApp.AuditTrail.AuditTrailModule()
|
||||
Me.ConditionalAppearanceModule1 = New DevExpress.ExpressApp.ConditionalAppearance.ConditionalAppearanceModule()
|
||||
Me.FileAttachmentsAspNetModule1 = New DevExpress.ExpressApp.FileAttachments.Web.FileAttachmentsAspNetModule()
|
||||
Me.HtmlPropertyEditorAspNetModule1 = New DevExpress.ExpressApp.HtmlPropertyEditor.Web.HtmlPropertyEditorAspNetModule()
|
||||
Me.ViewVariantsModule1 = New DevExpress.ExpressApp.ViewVariantsModule.ViewVariantsModule()
|
||||
Me.SecurityComplex1 = New DevExpress.ExpressApp.Security.SecurityComplex()
|
||||
Me.AuthenticationStandard1 = New DevExpress.ExpressApp.Security.AuthenticationStandard()
|
||||
Me.ChartAspNetModule1 = New DevExpress.ExpressApp.Chart.Web.ChartAspNetModule()
|
||||
Me.ChartModule1 = New DevExpress.ExpressApp.Chart.ChartModule()
|
||||
Me.CloneObjectModule1 = New DevExpress.ExpressApp.CloneObject.CloneObjectModule()
|
||||
Me.PivotChartAspNetModule1 = New DevExpress.ExpressApp.PivotChart.Web.PivotChartAspNetModule()
|
||||
Me.PivotChartModuleBase1 = New DevExpress.ExpressApp.PivotChart.PivotChartModuleBase()
|
||||
Me.PivotGridAspNetModule1 = New DevExpress.ExpressApp.PivotGrid.Web.PivotGridAspNetModule()
|
||||
Me.PivotGridModule1 = New DevExpress.ExpressApp.PivotGrid.PivotGridModule()
|
||||
Me.TreeListEditorsAspNetModule1 = New DevExpress.ExpressApp.TreeListEditors.Web.TreeListEditorsAspNetModule()
|
||||
Me.TreeListEditorsModuleBase1 = New DevExpress.ExpressApp.TreeListEditors.TreeListEditorsModuleBase()
|
||||
Me.ReportsAspNetModule1 = New DevExpress.ExpressApp.Reports.Web.ReportsAspNetModule()
|
||||
Me.ReportsModule1 = New DevExpress.ExpressApp.Reports.ReportsModule()
|
||||
Me.SchedulerAspNetModule1 = New DevExpress.ExpressApp.Scheduler.Web.SchedulerAspNetModule()
|
||||
Me.SchedulerModuleBase1 = New DevExpress.ExpressApp.Scheduler.SchedulerModuleBase()
|
||||
Me.SisBusinessModule1 = New SISBusiness.[Module].SISBusinessModule()
|
||||
Me.KpiModule1 = New DevExpress.ExpressApp.Kpi.KpiModule()
|
||||
Me.SisBusinessAspNetModule1 = New SISBusiness.[Module].Web.SISBusinessAspNetModule()
|
||||
Me.ReportsModuleV21 = New DevExpress.ExpressApp.ReportsV2.ReportsModuleV2()
|
||||
Me.NotificationsModule1 = New DevExpress.ExpressApp.Notifications.NotificationsModule()
|
||||
Me.ReportsAspNetModuleV21 = New DevExpress.ExpressApp.ReportsV2.Web.ReportsAspNetModuleV2()
|
||||
CType(Me, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
'
|
||||
'module5
|
||||
'
|
||||
Me.module5.AllowValidationDetailsAccess = True
|
||||
Me.module5.IgnoreWarningAndInformationRules = False
|
||||
'
|
||||
'sqlConnection1
|
||||
'
|
||||
Me.sqlConnection1.ConnectionString = "Data Source=(local);Initial Catalog=SISSupport;Integrated Security=SSPI;Pooling=f" & _
|
||||
"alse"
|
||||
Me.sqlConnection1.FireInfoMessageEventOnUserErrors = False
|
||||
'
|
||||
'AuditTrailModule1
|
||||
'
|
||||
Me.AuditTrailModule1.AuditDataItemPersistentType = GetType(DevExpress.Persistent.BaseImpl.AuditDataItemPersistent)
|
||||
'
|
||||
'SecurityComplex1
|
||||
'
|
||||
Me.SecurityComplex1.Authentication = Me.AuthenticationStandard1
|
||||
Me.SecurityComplex1.RoleType = GetType(DevExpress.Persistent.BaseImpl.Role)
|
||||
Me.SecurityComplex1.UserType = GetType(DevExpress.Persistent.BaseImpl.User)
|
||||
'
|
||||
'AuthenticationStandard1
|
||||
'
|
||||
Me.AuthenticationStandard1.LogonParametersType = GetType(DevExpress.ExpressApp.Security.AuthenticationStandardLogonParameters)
|
||||
'
|
||||
'PivotChartModuleBase1
|
||||
'
|
||||
Me.PivotChartModuleBase1.ShowAdditionalNavigation = False
|
||||
'
|
||||
'ReportsModule1
|
||||
'
|
||||
Me.ReportsModule1.EnableInplaceReports = True
|
||||
Me.ReportsModule1.ReportDataType = GetType(DevExpress.Persistent.BaseImpl.ReportData)
|
||||
'
|
||||
'ReportsModuleV21
|
||||
'
|
||||
Me.ReportsModuleV21.EnableInplaceReports = True
|
||||
Me.ReportsModuleV21.ReportDataType = GetType(DevExpress.Persistent.BaseImpl.ReportDataV2)
|
||||
'
|
||||
'NotificationsModule1
|
||||
'
|
||||
Me.NotificationsModule1.NotificationsRefreshInterval = System.TimeSpan.Parse("00:05:00")
|
||||
Me.NotificationsModule1.NotificationsStartDelay = System.TimeSpan.Parse("00:00:05")
|
||||
Me.NotificationsModule1.ShowNotificationsWindow = True
|
||||
'
|
||||
'ReportsAspNetModuleV21
|
||||
'
|
||||
'Me.ReportsAspNetModuleV21.ClientLibrariesLocation = DevExpress.ExpressApp.ReportsV2.Web.ClientLibrariesLocations.Embedded
|
||||
'
|
||||
'SISBusinessSupportAspNetApplication
|
||||
'
|
||||
Me.ApplicationName = "SISBusiness"
|
||||
Me.Connection = Me.sqlConnection1
|
||||
Me.Modules.Add(Me.module1)
|
||||
Me.Modules.Add(Me.module2)
|
||||
Me.Modules.Add(Me.module6)
|
||||
Me.Modules.Add(Me.ViewVariantsModule1)
|
||||
Me.Modules.Add(Me.ConditionalAppearanceModule1)
|
||||
Me.Modules.Add(Me.AuditTrailModule1)
|
||||
Me.Modules.Add(Me.module5)
|
||||
Me.Modules.Add(Me.HtmlPropertyEditorAspNetModule1)
|
||||
Me.Modules.Add(Me.FileAttachmentsAspNetModule1)
|
||||
Me.Modules.Add(Me.ChartModule1)
|
||||
Me.Modules.Add(Me.ChartAspNetModule1)
|
||||
Me.Modules.Add(Me.securityModule1)
|
||||
Me.Modules.Add(Me.CloneObjectModule1)
|
||||
Me.Modules.Add(Me.PivotChartModuleBase1)
|
||||
Me.Modules.Add(Me.PivotChartAspNetModule1)
|
||||
Me.Modules.Add(Me.PivotGridModule1)
|
||||
Me.Modules.Add(Me.PivotGridAspNetModule1)
|
||||
Me.Modules.Add(Me.TreeListEditorsModuleBase1)
|
||||
Me.Modules.Add(Me.TreeListEditorsAspNetModule1)
|
||||
Me.Modules.Add(Me.ReportsModule1)
|
||||
Me.Modules.Add(Me.ReportsAspNetModule1)
|
||||
Me.Modules.Add(Me.SchedulerModuleBase1)
|
||||
Me.Modules.Add(Me.SchedulerAspNetModule1)
|
||||
Me.Modules.Add(Me.KpiModule1)
|
||||
Me.Modules.Add(Me.ReportsModuleV21)
|
||||
Me.Modules.Add(Me.NotificationsModule1)
|
||||
Me.Modules.Add(Me.SisBusinessModule1)
|
||||
Me.Modules.Add(Me.SisBusinessAspNetModule1)
|
||||
Me.Modules.Add(Me.ReportsAspNetModuleV21)
|
||||
Me.Security = Me.SecurityComplex1
|
||||
CType(Me, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
|
||||
End Sub
|
||||
Protected Overrides Sub CreateDefaultObjectSpaceProvider(args As CreateCustomObjectSpaceProviderEventArgs)
|
||||
args.ObjectSpaceProvider = New XPObjectSpaceProvider(args.ConnectionString, args.Connection)
|
||||
End Sub
|
||||
|
||||
Protected Overrides Sub OnLoggedOn(ByVal e As DevExpress.ExpressApp.LogonEventArgs)
|
||||
MyBase.OnLoggedOn(e)
|
||||
Dim _Contacts As Contacts = _ocur.FindObject(Of Contacts)(CriteriaOperator.Parse("User = ?", _ocur.GetObject(SecuritySystem.CurrentUser)))
|
||||
If _Contacts IsNot Nothing Then
|
||||
If _Contacts.Customers IsNot Nothing Then
|
||||
|
||||
Else
|
||||
MsgBox("Ön nem jogosult a rendszer használatára !")
|
||||
ForceLogout()
|
||||
End If
|
||||
Else
|
||||
MsgBox("Ön nem jogosult a rendszer használatára !")
|
||||
ForceLogout()
|
||||
End If
|
||||
|
||||
End Sub
|
||||
Protected Overrides Sub OnObjectSpaceCreated(objectSpace As DevExpress.ExpressApp.IObjectSpace)
|
||||
MyBase.OnObjectSpaceCreated(objectSpace)
|
||||
_ocur = objectSpace
|
||||
End Sub
|
||||
|
||||
Private Sub ForceLogout()
|
||||
SecuritySystem.Instance.Logoff()
|
||||
HttpContext.Current.Session.Abandon()
|
||||
FormsAuthentication.SignOut()
|
||||
HttpContext.Current.Response.Redirect(HttpContext.Current.Request.Url.ToString())
|
||||
End Sub
|
||||
End Class
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="DashboardViewer.aspx.vb" Inherits=".DashboardViewer" %>
|
||||
|
||||
<%@ Register assembly="DevExpress.Dashboard.v15.2.Web, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" namespace="DevExpress.DashboardWeb" tagprefix="dx" %>
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head runat="server">
|
||||
<title></title>
|
||||
</head>
|
||||
<body>
|
||||
<form id="form1" runat="server">
|
||||
<div>
|
||||
<dx:ASPxDashboardViewer ID="ASPxDashboardViewer1" runat="server" FullscreenMode="True" RegisterJQuery="True">
|
||||
</dx:ASPxDashboardViewer>
|
||||
</div>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,33 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class DashboardViewer
|
||||
|
||||
'''<summary>
|
||||
'''form1 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents form1 As Global.System.Web.UI.HtmlControls.HtmlForm
|
||||
|
||||
'''<summary>
|
||||
'''ASPxDashboardViewer1 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ASPxDashboardViewer1 As Global.DevExpress.DashboardWeb.ASPxDashboardViewer
|
||||
End Class
|
||||
@@ -0,0 +1,39 @@
|
||||
Imports SISBusiness.Module.GeneralFunction
|
||||
Imports DevExpress.DashboardCommon
|
||||
Imports DevExpress.DataAccess
|
||||
Imports DevExpress.DataAccess.ConnectionParameters
|
||||
Imports DevExpress.DataAccess.Sql
|
||||
|
||||
Public Class DashboardViewer
|
||||
Inherits System.Web.UI.Page
|
||||
|
||||
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
|
||||
Me.ASPxDashboardViewer1.DashboardXmlFile = GLOBAL_DASHBOARD_XML_DashboardXmlFile
|
||||
End Sub
|
||||
|
||||
Private Sub ASPxDashboardViewer1_ConfigureDataConnection(sender As Object, e As ConfigureDataConnectionEventArgs) Handles ASPxDashboardViewer1.ConfigureDataConnection
|
||||
Select Case GLOBAL_DASHBOARD_XML_SQLType
|
||||
Case "MSSQL"
|
||||
Dim _ConnectionParameters_MSSQL As New MsSqlConnectionParameters
|
||||
_ConnectionParameters_MSSQL.UserName = GLOBAL_DASHBOARD_XML_UserName
|
||||
_ConnectionParameters_MSSQL.Password = GLOBAL_DASHBOARD_XML_Password
|
||||
_ConnectionParameters_MSSQL.ServerName = GLOBAL_DASHBOARD_XML_ServerName
|
||||
_ConnectionParameters_MSSQL.DatabaseName = GLOBAL_DASHBOARD_XML_DatabaseName
|
||||
e.ConnectionParameters = _ConnectionParameters_MSSQL
|
||||
Case "MYSQL"
|
||||
Dim _ConnectionParameters_MYSQL As New MySqlConnectionParameters
|
||||
_ConnectionParameters_MYSQL.UserName = GLOBAL_DASHBOARD_XML_UserName
|
||||
_ConnectionParameters_MYSQL.Password = GLOBAL_DASHBOARD_XML_Password
|
||||
_ConnectionParameters_MYSQL.ServerName = GLOBAL_DASHBOARD_XML_ServerName
|
||||
_ConnectionParameters_MYSQL.DatabaseName = GLOBAL_DASHBOARD_XML_DatabaseName
|
||||
e.ConnectionParameters = _ConnectionParameters_MYSQL
|
||||
Case "PSQL"
|
||||
Dim _ConnectionParameters_PSQL As New PostgreSqlConnectionParameters
|
||||
_ConnectionParameters_PSQL.UserName = GLOBAL_DASHBOARD_XML_UserName
|
||||
_ConnectionParameters_PSQL.Password = GLOBAL_DASHBOARD_XML_Password
|
||||
_ConnectionParameters_PSQL.ServerName = GLOBAL_DASHBOARD_XML_ServerName
|
||||
_ConnectionParameters_PSQL.DatabaseName = GLOBAL_DASHBOARD_XML_DatabaseName
|
||||
e.ConnectionParameters = _ConnectionParameters_PSQL
|
||||
End Select
|
||||
End Sub
|
||||
End Class
|
||||
@@ -0,0 +1,19 @@
|
||||
<%@ Page Language="VB" AutoEventWireup="true" Inherits="Default" EnableViewState="false"
|
||||
ValidateRequest="false" CodeBehind="Default.aspx.vb" %>
|
||||
<%@ Register Assembly="DevExpress.ExpressApp.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a"
|
||||
Namespace="DevExpress.ExpressApp.Web.Templates" TagPrefix="cc3" %>
|
||||
<%@ Register Assembly="DevExpress.ExpressApp.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a"
|
||||
Namespace="DevExpress.ExpressApp.Web.Controls" TagPrefix="cc4" %>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head id="Head1" runat="server">
|
||||
<title>Main Page</title>
|
||||
<meta http-equiv="Expires" content="0" />
|
||||
</head>
|
||||
<body class="VerticalTemplate">
|
||||
<form id="form2" runat="server">
|
||||
<cc4:ASPxProgressControl ID="ProgressControl" runat="server" />
|
||||
<div runat="server" id="Content" />
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,51 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class [Default]
|
||||
|
||||
'''<summary>
|
||||
'''Head1 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents Head1 As Global.System.Web.UI.HtmlControls.HtmlHead
|
||||
|
||||
'''<summary>
|
||||
'''form2 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents form2 As Global.System.Web.UI.HtmlControls.HtmlForm
|
||||
|
||||
'''<summary>
|
||||
'''ProgressControl control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ProgressControl As Global.DevExpress.ExpressApp.Web.Controls.ASPxProgressControl
|
||||
|
||||
'''<summary>
|
||||
'''Content control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents Content As Global.System.Web.UI.HtmlControls.HtmlGenericControl
|
||||
End Class
|
||||
@@ -0,0 +1,26 @@
|
||||
Imports Microsoft.VisualBasic
|
||||
Imports System
|
||||
Imports System.Collections.Generic
|
||||
Imports System.Web.UI
|
||||
Imports DevExpress.ExpressApp.Templates
|
||||
Imports DevExpress.ExpressApp.Web
|
||||
Imports DevExpress.ExpressApp.Web.Templates
|
||||
Imports DevExpress.ExpressApp.Web.Templates.ActionContainers
|
||||
|
||||
Partial Public Class [Default]
|
||||
Inherits BaseXafPage
|
||||
|
||||
Shared Sub New()
|
||||
End Sub
|
||||
|
||||
Protected Overrides Function CreateContextActionsMenu() As ContextActionsMenu
|
||||
Return New ContextActionsMenu(Me, "Edit", "RecordEdit", "ObjectsCreation", "ListView", "Reports")
|
||||
End Function
|
||||
|
||||
|
||||
Public Overrides ReadOnly Property InnerContentPlaceHolder() As Control
|
||||
Get
|
||||
Return Content
|
||||
End Get
|
||||
End Property
|
||||
End Class
|
||||
@@ -0,0 +1,126 @@
|
||||
<%@ Control Language="vb" AutoEventWireup="true" Inherits="ImagePropertiesForm" Codebehind="ImagePropertiesForm.ascx.vb" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web" TagPrefix="dxe" %>
|
||||
<table cellpadding="0" cellspacing="0" id="dxImagePropertiesForm">
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxLabel ID="lblSize" runat="server" AssociatedControlID="cmbSize"></dxe:ASPxLabel>
|
||||
<div class="captionIndent"></div>
|
||||
<dxe:ASPxComboBox ID="cmbSize" runat="server" ValueType="System.String" ClientInstanceName="_dxeCmbSize">
|
||||
<ClientSideEvents SelectedIndexChanged="function(s, e) { OnCmbSizeSelectedIndexChanged(s); }" />
|
||||
</dxe:ASPxComboBox>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr style="display:none;" id='<% =HtmlEditor.ClientID + "_dxeSizePropertiesRow" %>'>
|
||||
<td class="imageSizeEditorsCell">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td>
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="captionCell">
|
||||
<dxe:ASPxLabel ID="lblWidth" runat="server" AssociatedControlID="spnWidth"></dxe:ASPxLabel></td>
|
||||
<td>
|
||||
<dxe:ASPxSpinEdit ID="spnWidth" ClientInstanceName="_dxeSpnWidth" runat="server" Height="21px" Number="1" Width="52px" AllowNull="False" NumberType="Integer" MaxValue="10000" MinValue="1">
|
||||
<SpinButtons ShowIncrementButtons="False">
|
||||
</SpinButtons>
|
||||
<ClientSideEvents NumberChanged="function(s, e) { aspxSizeSpinNumberChanged("width"); }" KeyUp="function(s, e) { aspxSizeSpinKeyUp("width", e.htmlEvent); }"/>
|
||||
</dxe:ASPxSpinEdit>
|
||||
</td>
|
||||
<td class="pixelSizeCell"><dxe:ASPxLabel ID="lblPixelWidth" runat="server"></dxe:ASPxLabel></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="3" class="separatorCell"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="captionCell"><dxe:ASPxLabel ID="lblHeight" runat="server" AssociatedControlID="spnHeight"></dxe:ASPxLabel></td>
|
||||
<td>
|
||||
<dxe:ASPxSpinEdit ID="spnHeight" ClientInstanceName="_dxeSpnHeight" runat="server" Height="21px" Number="1" Width="52px" AllowNull="False" MinValue="1" NumberType="Integer" MaxValue="10000">
|
||||
<SpinButtons ShowIncrementButtons="False">
|
||||
</SpinButtons>
|
||||
<ClientSideEvents NumberChanged="function(s, e) { aspxSizeSpinNumberChanged("height"); }" KeyUp="function(s, e) { aspxSizeSpinKeyUp("height", e.htmlEvent); }"/>
|
||||
</dxe:ASPxSpinEdit>
|
||||
</td>
|
||||
<td class="pixelSizeCell"><dxe:ASPxLabel ID="lblPixelHeight" runat="server"></dxe:ASPxLabel></td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="constrainProportionsCell">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr><td id="cellContarainTop" runat="server"></td></tr>
|
||||
<tr><td id="cellContarainSwitcher" runat="server" style="cursor: pointer;"></td></tr>
|
||||
<tr><td id="cellContarainBottom" runat="server"></td></tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<div class="fieldSeparator"></div>
|
||||
<dxe:ASPxCheckBox ID="ckbCreateThumbnail" runat="server" ClientInstanceName="_dxeCkbCreateThumbnail">
|
||||
<ClientSideEvents CheckedChanged="function(s, e) { OnCreateThumbnailCheckedChanged(s.GetChecked()) }" />
|
||||
</dxe:ASPxCheckBox>
|
||||
<div id='<% =HtmlEditor.ClientID + "_dxeThumbnailFileNameArea" %>' class="thumbnailFileNameArea" style="display:none;">
|
||||
<dxe:ASPxLabel ID="lblThumbnailFileName" runat="server" AssociatedControlID="txbThumbnailFileName"></dxe:ASPxLabel>
|
||||
<div class="captionIndent"></div>
|
||||
<dxe:ASPxTextBox ID="txbThumbnailFileName" ClientInstanceName="_dxeThumbnailFileName" runat="server" Width="170px" AutoCompleteType="Disabled">
|
||||
<ValidationSettings ErrorDisplayMode="Text" ErrorTextPosition="Bottom" SetFocusOnError="True" ValidateOnLeave="False" ValidationGroup="_dxeThumbnailFileNameGroup">
|
||||
<ErrorFrameStyle Font-Size="10px">
|
||||
<Paddings PaddingRight="0px" />
|
||||
</ErrorFrameStyle>
|
||||
<RequiredField IsRequired="True" />
|
||||
</ValidationSettings>
|
||||
</dxe:ASPxTextBox>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div class="fieldSeparator"></div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxLabel ID="lblImagePosition" runat="server" AssociatedControlID="cmbImagePosition"></dxe:ASPxLabel>
|
||||
<div class="captionIndent"></div>
|
||||
<dxe:ASPxComboBox ID="cmbImagePosition" ClientInstanceName="_dxeCmbImagePosition" runat="server" ValueType="System.String">
|
||||
<ClientSideEvents SelectedIndexChanged="function(s, e) { OnImagePositionChanged(s); }" />
|
||||
</dxe:ASPxComboBox>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="ckbWrapTextCell">
|
||||
<div>
|
||||
<dxe:ASPxCheckBox ID="ckbWrapTextArroundImage" ClientInstanceName="_dxeCkbWrapTextArroundImage" runat="server" />
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div class="fieldSeparator"></div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxLabel ID="lblImageDescription" runat="server" AssociatedControlID="txbDescription"></dxe:ASPxLabel>
|
||||
<div class="captionIndent"></div>
|
||||
<dxe:ASPxTextBox ID="txbDescription" ClientInstanceName="_dxeTxbDescription" runat="server" Width="170px" AutoCompleteType="Disabled">
|
||||
</dxe:ASPxTextBox>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<script type="text/javascript" id="dxss_ImagePropertiesForm">
|
||||
function OnCmbSizeSelectedIndexChanged(cmb) {
|
||||
var isShow = cmb.GetValue() != "original";
|
||||
_aspxSetElementDisplay(_aspxGetElementById('<% =HtmlEditor.ClientID + "_dxeSizePropertiesRow" %>'), isShow);
|
||||
if (isShow)
|
||||
aspxAdjustControlsSizeInDialogWindow();
|
||||
}
|
||||
function OnCreateThumbnailCheckedChanged(isChecked) {
|
||||
_aspxSetElementDisplay(_aspxGetElementById('<% =HtmlEditor.ClientID + "_dxeThumbnailFileNameArea" %>'), isChecked);
|
||||
if (isChecked)
|
||||
aspxAdjustControlsSizeInDialogWindow();
|
||||
}
|
||||
function OnImagePositionChanged(cmb) {
|
||||
var selectedItem = cmb.GetItem(cmb.GetSelectedIndex());
|
||||
_dxeCkbWrapTextArroundImage.SetEnabled(selectedItem.value != "center");
|
||||
}
|
||||
</script>
|
||||
@@ -0,0 +1,186 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class ImagePropertiesForm
|
||||
|
||||
'''<summary>
|
||||
'''lblSize control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblSize As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''cmbSize control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents cmbSize As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''lblWidth control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblWidth As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''spnWidth control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents spnWidth As Global.DevExpress.Web.ASPxSpinEdit
|
||||
|
||||
'''<summary>
|
||||
'''lblPixelWidth control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblPixelWidth As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''lblHeight control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblHeight As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''spnHeight control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents spnHeight As Global.DevExpress.Web.ASPxSpinEdit
|
||||
|
||||
'''<summary>
|
||||
'''lblPixelHeight control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblPixelHeight As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''cellContarainTop control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents cellContarainTop As Global.System.Web.UI.HtmlControls.HtmlTableCell
|
||||
|
||||
'''<summary>
|
||||
'''cellContarainSwitcher control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents cellContarainSwitcher As Global.System.Web.UI.HtmlControls.HtmlTableCell
|
||||
|
||||
'''<summary>
|
||||
'''cellContarainBottom control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents cellContarainBottom As Global.System.Web.UI.HtmlControls.HtmlTableCell
|
||||
|
||||
'''<summary>
|
||||
'''ckbCreateThumbnail control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ckbCreateThumbnail As Global.DevExpress.Web.ASPxCheckBox
|
||||
|
||||
'''<summary>
|
||||
'''lblThumbnailFileName control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblThumbnailFileName As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''txbThumbnailFileName control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents txbThumbnailFileName As Global.DevExpress.Web.ASPxTextBox
|
||||
|
||||
'''<summary>
|
||||
'''lblImagePosition control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblImagePosition As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''cmbImagePosition control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents cmbImagePosition As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''ckbWrapTextArroundImage control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ckbWrapTextArroundImage As Global.DevExpress.Web.ASPxCheckBox
|
||||
|
||||
'''<summary>
|
||||
'''lblImageDescription control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblImageDescription As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''txbDescription control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents txbDescription As Global.DevExpress.Web.ASPxTextBox
|
||||
End Class
|
||||
@@ -0,0 +1,72 @@
|
||||
Imports System
|
||||
Imports System.Data
|
||||
Imports System.Configuration
|
||||
Imports System.Collections
|
||||
Imports System.Web
|
||||
Imports System.Web.Security
|
||||
Imports System.Web.UI
|
||||
Imports System.Web.UI.WebControls
|
||||
Imports System.Web.UI.WebControls.WebParts
|
||||
Imports System.Web.UI.HtmlControls
|
||||
Imports DevExpress.Web.ASPxHtmlEditor
|
||||
Imports DevExpress.Web.ASPxHtmlEditor.Localization
|
||||
Imports DevExpress.Web
|
||||
Imports DevExpress.Web.Internal
|
||||
|
||||
Partial Public Class ImagePropertiesForm
|
||||
Inherits HtmlEditorUserControl
|
||||
Protected Overrides Sub PrepareChildControls()
|
||||
ckbCreateThumbnail.ClientVisible = Not String.IsNullOrEmpty(HtmlEditor.SettingsImageUpload.UploadImageFolder)
|
||||
CreateConstrainProportionsImages()
|
||||
Localize()
|
||||
|
||||
MyBase.PrepareChildControls()
|
||||
End Sub
|
||||
Private Sub Localize()
|
||||
lblSize.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ImageProps_Size) & ":"
|
||||
cmbSize.Items.Add(ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ImageProps_OriginalSize), "original")
|
||||
cmbSize.Items.Add(ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ImageProps_CustomSize), "custom")
|
||||
cmbSize.SelectedIndex = 0
|
||||
lblWidth.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ImageProps_Width) & ":"
|
||||
lblPixelWidth.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ImageProps_Pixels)
|
||||
lblHeight.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ImageProps_Height) & ":"
|
||||
lblPixelHeight.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ImageProps_Pixels)
|
||||
ckbCreateThumbnail.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ImageProps_CreateThumbnail)
|
||||
lblThumbnailFileName.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ImageProps_NewImageName) & ":"
|
||||
txbThumbnailFileName.ValidationSettings.RequiredField.ErrorText = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.RequiredFieldError)
|
||||
lblImagePosition.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ImageProps_Position) & ":"
|
||||
cmbImagePosition.Items.Add("", "")
|
||||
cmbImagePosition.Items.Add(ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ImageProps_PositionLeft), "left")
|
||||
cmbImagePosition.Items.Add(ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ImageProps_PositionCenter), "center")
|
||||
cmbImagePosition.Items.Add(ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ImageProps_PositionRight), "right")
|
||||
cmbImagePosition.SelectedIndex = 0
|
||||
lblImageDescription.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ImageProps_Description) & ":"
|
||||
ckbWrapTextArroundImage.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertImage_UseFloat)
|
||||
End Sub
|
||||
Protected Overrides Function GetChildDxEdits() As ASPxEditBase()
|
||||
Return New ASPxEditBase() {lblSize, cmbSize, lblWidth, spnWidth, lblPixelWidth, lblHeight, spnHeight, lblPixelHeight, lblImagePosition, cmbImagePosition, lblImageDescription, txbDescription, ckbCreateThumbnail, lblThumbnailFileName, txbThumbnailFileName, ckbWrapTextArroundImage }
|
||||
End Function
|
||||
Protected Sub CreateConstrainProportionsImages()
|
||||
Dim imgTop As Image = RenderUtils.CreateImage()
|
||||
cellContarainTop.Controls.Add(imgTop)
|
||||
HtmlEditor.GetInsertImageDialogConstrainProportionsTop().AssignToControl(imgTop, False)
|
||||
|
||||
Dim imgBottom As Image = RenderUtils.CreateImage()
|
||||
cellContarainBottom.Controls.Add(imgBottom)
|
||||
HtmlEditor.GetInsertImageDialogConstrainProportionsBottom().AssignToControl(imgBottom, False)
|
||||
|
||||
Dim imgSwitcherOn As Image = RenderUtils.CreateImage()
|
||||
imgSwitcherOn.ID = "imgOn"
|
||||
cellContarainSwitcher.Controls.Add(imgSwitcherOn)
|
||||
HtmlEditor.GetInsertImageDialogConstrainProportionsMiddleOn().AssignToControl(imgSwitcherOn, False)
|
||||
|
||||
Dim imgSwitcherOff As Image = RenderUtils.CreateImage()
|
||||
imgSwitcherOff.ID = "imgOff"
|
||||
cellContarainSwitcher.Controls.Add(imgSwitcherOff)
|
||||
HtmlEditor.GetInsertImageDialogConstrainProportionsMiddleOff().AssignToControl(imgSwitcherOff, False)
|
||||
|
||||
imgSwitcherOn.Attributes.Add("onclick", "aspxConstrainProportionsSwitchClick(event, '" & imgSwitcherOff.ClientID & "')")
|
||||
imgSwitcherOff.Attributes.Add("onclick", "aspxConstrainProportionsSwitchClick(event,'" & imgSwitcherOn.ClientID & "')")
|
||||
imgSwitcherOff.Style.Add("display", "none")
|
||||
End Sub
|
||||
End Class
|
||||
@@ -0,0 +1,229 @@
|
||||
<%@ Control Language="vb" AutoEventWireup="true" Inherits="InsertImageForm" Codebehind="InsertImageForm.ascx.vb" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web" TagPrefix="dxe" %>
|
||||
<%@ Register Assembly="DevExpress.Web.ASPxHtmlEditor.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxHtmlEditor" TagPrefix="dxhe" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web" TagPrefix="dxp" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web" TagPrefix="dx" %>
|
||||
<%@ Register assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" namespace="DevExpress.Web" tagprefix="dxhf" %>
|
||||
<%@ Register Src="ImagePropertiesForm.ascx" TagName="ImagePropertiesForm" TagPrefix="ucip" %>
|
||||
<%@ Register Src="SelectImageForm.ascx" TagName="SelectImageForm" TagPrefix="ucip" %>
|
||||
|
||||
<dxp:ASPxPanel ID="Panel1" runat="server" Width="100%" DefaultButton="btnInsertImage">
|
||||
<PanelCollection>
|
||||
<dxp:PanelContent runat="server">
|
||||
<table cellpadding="0" cellspacing="0" id="dxInsertImageForm">
|
||||
<tr>
|
||||
<td class="contentCell">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="typeRadionButtonListCell">
|
||||
<table cellpadding="0" cellspacing="0" class="radioButtonTable">
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxRadioButton ID="rblFromTheWeb" runat="server" GroupName="InsertImageFormGroup" Checked="True" TextWrap="False" ClientInstanceName="_dxeRblImageFromTheWeb">
|
||||
<ClientSideEvents CheckedChanged="function(s, e) { OnImageFromTypeChanged__InsertImageForm(s); }" />
|
||||
</dxe:ASPxRadioButton>
|
||||
</td>
|
||||
<td>
|
||||
<dxe:ASPxRadioButton ID="rblFromThisComputer" runat="server" GroupName="InsertImageFormGroup" TextWrap="False" ClientInstanceName="_dxeRblImageFromThisComputer">
|
||||
<ClientSideEvents CheckedChanged="function(s, e) { OnImageFromTypeChanged__InsertImageForm(s); }" />
|
||||
</dxe:ASPxRadioButton>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<table cellpadding="0" cellspacing="0" style="width:100%;">
|
||||
<tr>
|
||||
<td style="vertical-align:top">
|
||||
<dxhe:ASPxHtmlEditorRoundPanel ID="rpInsertImage" runat="server" Width="315px">
|
||||
<PanelCollection>
|
||||
<dxhe:HtmlEditorRoundPanelContent runat="server">
|
||||
<!-- FromTheWeb -->
|
||||
<table cellpadding="0" cellspacing="0" id='<% =HtmlEditor.ClientID + "_dxeFromTheWeb" %>' class="fromTheWeb" >
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxLabel ID="lblImageUrl" runat="server" AssociatedControlID="txbInsertImageUrl">
|
||||
</dxe:ASPxLabel>
|
||||
<dxe:ASPxButtonEdit ID="txbInsertImageUrl" ClientInstanceName="_dxeTbxInsertImageUrl"
|
||||
runat="server" Width="100%" AutoCompleteType="Disabled">
|
||||
<ClientSideEvents TextChanged="function(s, e) { aspxInsertImageSrcValueChanged(s.GetText()); }"
|
||||
ButtonClick="function(s,e){aspxHEOnBrowseButtonClick();}" />
|
||||
<Buttons>
|
||||
<dxe:EditButton>
|
||||
</dxe:EditButton>
|
||||
</Buttons>
|
||||
<ValidationSettings ErrorDisplayMode="Text" ErrorTextPosition="Bottom" SetFocusOnError="True"
|
||||
ValidateOnLeave="False" ValidationGroup="_dxeTbxInsertImageUrlGroup" Display="Dynamic">
|
||||
<RequiredField IsRequired="True" />
|
||||
<ErrorFrameStyle Font-Size="10px">
|
||||
</ErrorFrameStyle>
|
||||
</ValidationSettings>
|
||||
</dxe:ASPxButtonEdit>
|
||||
<dx:ASPxPopupControl ID="BrowsePopup" runat="server" CloseAction="CloseButton" PopupAction="None"
|
||||
PopupElementID="Panel1" ClientInstanceName="BrowsePopup" PopupHorizontalAlign="Center"
|
||||
PopupVerticalAlign="Middle" AllowDragging="True" Modal="true" EnableAnimation="false" RenderMode="Lightweight">
|
||||
<ContentStyle Paddings-Padding="0px">
|
||||
</ContentStyle>
|
||||
<ClientSideEvents PopUp="function(s, e) { aspxHEOnBrowserPopupOpen(); }" CloseUp="function(s, e) { aspxHEOnBrowserPopupClose(); }" />
|
||||
<ModalBackgroundStyle Opacity="1">
|
||||
</ModalBackgroundStyle>
|
||||
<ContentCollection>
|
||||
<dx:PopupControlContentControl ID="PopupControlContentControl1" runat="server">
|
||||
<ucip:SelectImageForm ID="ucSelectImageForm" runat="server" />
|
||||
</dx:PopupControlContentControl>
|
||||
</ContentCollection>
|
||||
</dx:ASPxPopupControl>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="saveToServerCheckBoxCell">
|
||||
<dxe:ASPxCheckBox ID="ckbSaveToServer" ClientInstanceName="_dxeCkbSaveToServer" runat="server">
|
||||
</dxe:ASPxCheckBox>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="imagePreview">
|
||||
<table cellpadding="0" cellspacing="0" style="width: 100%;">
|
||||
<tr>
|
||||
<td class="imagePreviewCell">
|
||||
<span id='<% =HtmlEditor.ClientID + "_dxInsertImagePreviewText" %>'><% =DevExpress.Web.ASPxHtmlEditor.Localization.ASPxHtmlEditorLocalizer.GetString(DevExpress.Web.ASPxHtmlEditor.Localization.ASPxHtmlEditorStringId.InsertImage_Preview)%></span>
|
||||
<img id='<% =HtmlEditor.ClientID + "_dxInsertImagePreviewImage"%>' style="display:none;" width="180" height="100" alt="<% =DevExpress.Web.ASPxHtmlEditor.Localization.ASPxHtmlEditorLocalizer.GetString(DevExpress.Web.ASPxHtmlEditor.Localization.ASPxHtmlEditorStringId.InsertImage_Preview) %>"/>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<!-- FromThisComputer -->
|
||||
<table cellpadding="0" cellspacing="0" id='<% =HtmlEditor.ClientID + "_dxeFromThisComputer" %>' style="display: none;">
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxLabel ID="lblBrowse" runat="server" AssociatedControlID="uplImage">
|
||||
</dxe:ASPxLabel>
|
||||
<div class="captionIndent"></div>
|
||||
<%-- Since the client FileUploadComplete event is not generated if the length of a request (the size of a file to upload) exceeds the maximum allowed request length, we duplicate a call to the aspxImageUploadComplete method within the FilesUploadComplete event handler.
|
||||
This is required to switch the Insert Image dialog to its active state (to remove the Loading Div element). --%>
|
||||
<dxhe:ASPxHtmlEditorUploadControl ID="uplImage" runat="server" ClientInstanceName="_dxeUplImage"
|
||||
OnFileUploadComplete="uplImage_FileUploadComplete" Width="100%">
|
||||
<ClientSideEvents FileUploadComplete="function(s, e) { aspxImageUploadComplete(e); }" FilesUploadComplete="function(s, e) { aspxImageUploadComplete(e); }"
|
||||
TextChanged="function(s, e) { aspxImageUploadTextChanged(); }" FileUploadStart="function(s, e) { aspxImageUploadStart(); }"/>
|
||||
</dxhe:ASPxHtmlEditorUploadControl>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</dxhe:HtmlEditorRoundPanelContent>
|
||||
</PanelCollection>
|
||||
</dxhe:ASPxHtmlEditorRoundPanel>
|
||||
</td>
|
||||
<%-- Image Properties --%>
|
||||
<td id='<% =HtmlEditor.ClientID + "_dxeMoreImagePropertiesRow"%>' class="imagePropertiesCell" style="display:none">
|
||||
<ucip:ImagePropertiesForm ID="ucImagePropertiesForm" runat="server" />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="moreOptionsCell">
|
||||
<dxe:ASPxCheckBox ID="ckbMoreImageOptions" ClientInstanceName="_dxeCkbMoreImageOptions" runat="server">
|
||||
<ClientSideEvents CheckedChanged="function(s, e) { OnMoreImageOptionsCheckedChanged(s.GetChecked()) }" />
|
||||
</dxe:ASPxCheckBox>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<%-- Button Cells --%>
|
||||
<td class="buttonsCell">
|
||||
<table cellpadding="0" cellspacing="0" style="display:inline-block;">
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxButton ID="btnInsertImage" runat="server" Height="26px" Width="82px"
|
||||
Autopostback="false" ClientInstanceName="_dxeBtnInsertImage" CausesValidation="False" >
|
||||
<clientsideevents click="function(s, e) { OnOkButtonClick_InsertImageForm(); }" />
|
||||
</dxe:ASPxButton>
|
||||
<dxe:ASPxButton ID="btnChangeImage" runat="server" AutoPostBack="False" Height="26px"
|
||||
Width="74px" ClientInstanceName="_dxeBtnChangeImage" ClientVisible="False" CausesValidation="False">
|
||||
<clientsideevents click="function(s, e) { OnOkButtonClick_InsertImageForm(); }" />
|
||||
</dxe:ASPxButton>
|
||||
</td>
|
||||
<td class="cancelButton">
|
||||
<dxe:ASPxButton ID="btnInsertImageCancel" runat="server" Height="26px"
|
||||
Width="82px" Autopostback="false" CausesValidation="False">
|
||||
<clientsideevents click="function(s, e) { OnCancelButtonClick_InsertImageForm(); }" />
|
||||
</dxe:ASPxButton>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</dxp:PanelContent>
|
||||
</PanelCollection>
|
||||
</dxp:ASPxPanel>
|
||||
<dxhf:ASPxHiddenField ID="dxHiddenField" runat="server" ClientInstanceName="_dxHiddenField" SyncWithServer="False"></dxhf:ASPxHiddenField>
|
||||
<script type="text/javascript" id="dxss_InsertLinkForm">
|
||||
function GetDialogData_InsertImageForm() {
|
||||
var useOriginalSize = _dxeCmbSize.GetValue().toLowerCase() == "original";
|
||||
|
||||
return {
|
||||
src: _dxeTbxInsertImageUrl.GetText(),
|
||||
cssClass: "",
|
||||
width: useOriginalSize ? "" : _dxeSpnWidth.GetValue(),
|
||||
height: useOriginalSize ? "" : _dxeSpnHeight.GetValue(),
|
||||
align: _dxeCmbImagePosition.GetValue(),
|
||||
alt: _dxeTxbDescription.GetText(),
|
||||
useFloat: _dxeCkbWrapTextArroundImage.GetChecked()
|
||||
};
|
||||
}
|
||||
function IsValidFields_InsertImageForm() {
|
||||
var ret = true;
|
||||
if (_dxeTbxInsertImageUrl.IsVisible())
|
||||
ret = ASPxClientEdit.ValidateGroup("_dxeTbxInsertImageUrlGroup") && ret;
|
||||
else {
|
||||
ret = (_dxeUplImage.GetText() != "") && ret;
|
||||
if(!ret)
|
||||
_dxeUplImage.UpdateCommonErrorDiv(_dxHiddenField.Get("RequiredFieldError"), true);
|
||||
}
|
||||
if (_dxeCkbCreateThumbnail.GetChecked())
|
||||
ret = ASPxClientEdit.ValidateGroup("_dxeThumbnailFileNameGroup") && ret;
|
||||
return ret;
|
||||
}
|
||||
function OnOkButtonClick_InsertImageForm() {
|
||||
if (!ASPxDialog.GetCurrentDialog().isPreventKeyPress && IsValidFields_InsertImageForm())
|
||||
aspxDialogComplete(1, GetDialogData_InsertImageForm());
|
||||
}
|
||||
function OnCancelButtonClick_InsertImageForm() {
|
||||
aspxDialogComplete(0, GetDialogData_InsertImageForm());
|
||||
}
|
||||
function OnMoreImageOptionsCheckedChanged(isChecked) {
|
||||
_aspxSetElementDisplay(_aspxGetElementById('<% =HtmlEditor.ClientID + "_dxeMoreImagePropertiesRow"%>'), isChecked);
|
||||
if (isChecked)
|
||||
aspxAdjustControlsSizeInDialogWindow();
|
||||
}
|
||||
function OnImageFromTypeChanged__InsertImageForm() {
|
||||
var fromWebArea = _aspxGetElementById('<% =HtmlEditor.ClientID + "_dxeFromTheWeb" %>');
|
||||
var fromThisComputerArea = _aspxGetElementById('<% =HtmlEditor.ClientID + "_dxeFromThisComputer" %>');
|
||||
_aspxSetElementDisplay(fromWebArea, _dxeRblImageFromTheWeb.GetChecked());
|
||||
_aspxSetElementDisplay(fromThisComputerArea, _dxeRblImageFromThisComputer.GetChecked());
|
||||
aspxOnImageFromTypeChanged();
|
||||
}
|
||||
function aspxHEOnBrowseButtonClick() {
|
||||
FileManager.browsePopup = BrowsePopup;
|
||||
BrowsePopup.Show();
|
||||
FileManager.Refresh();
|
||||
FileManager.Focus();
|
||||
}
|
||||
function aspxHEOnBrowserPopupOpen() {
|
||||
ASPxDialog.GetCurrentDialog().isPreventKeyPress = true;
|
||||
_aspxChangeAttribute(_aspxGetElementById('<% =HtmlEditor.ClientID + "_insertimagedialog_Panel1" %>'), "onkeypress", "");
|
||||
}
|
||||
function aspxHEOnBrowserPopupClose() {
|
||||
ASPxDialog.GetCurrentDialog().isPreventKeyPress = false;
|
||||
_aspxRestoreAttribute(_aspxGetElementById('<% =HtmlEditor.ClientID + "_insertimagedialog_Panel1" %>'), "onkeypress");
|
||||
_dxeTbxInsertImageUrl.Focus();
|
||||
}
|
||||
</script>
|
||||
@@ -0,0 +1,177 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class InsertImageForm
|
||||
|
||||
'''<summary>
|
||||
'''Panel1 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents Panel1 As Global.DevExpress.Web.ASPxPanel
|
||||
|
||||
'''<summary>
|
||||
'''rblFromTheWeb control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents rblFromTheWeb As Global.DevExpress.Web.ASPxRadioButton
|
||||
|
||||
'''<summary>
|
||||
'''rblFromThisComputer control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents rblFromThisComputer As Global.DevExpress.Web.ASPxRadioButton
|
||||
|
||||
'''<summary>
|
||||
'''rpInsertImage control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents rpInsertImage As Global.DevExpress.Web.ASPxHtmlEditor.ASPxHtmlEditorRoundPanel
|
||||
|
||||
'''<summary>
|
||||
'''lblImageUrl control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblImageUrl As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''txbInsertImageUrl control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents txbInsertImageUrl As Global.DevExpress.Web.ASPxButtonEdit
|
||||
|
||||
'''<summary>
|
||||
'''BrowsePopup control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents BrowsePopup As Global.DevExpress.Web.ASPxPopupControl
|
||||
|
||||
'''<summary>
|
||||
'''PopupControlContentControl1 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents PopupControlContentControl1 As Global.DevExpress.Web.PopupControlContentControl
|
||||
|
||||
'''<summary>
|
||||
'''ucSelectImageForm control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ucSelectImageForm As Global.SelectImageForm
|
||||
|
||||
'''<summary>
|
||||
'''ckbSaveToServer control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ckbSaveToServer As Global.DevExpress.Web.ASPxCheckBox
|
||||
|
||||
'''<summary>
|
||||
'''lblBrowse control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblBrowse As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''uplImage control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents uplImage As Global.DevExpress.Web.ASPxHtmlEditor.ASPxHtmlEditorUploadControl
|
||||
|
||||
'''<summary>
|
||||
'''ucImagePropertiesForm control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ucImagePropertiesForm As Global.ImagePropertiesForm
|
||||
|
||||
'''<summary>
|
||||
'''ckbMoreImageOptions control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ckbMoreImageOptions As Global.DevExpress.Web.ASPxCheckBox
|
||||
|
||||
'''<summary>
|
||||
'''btnInsertImage control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnInsertImage As Global.DevExpress.Web.ASPxButton
|
||||
|
||||
'''<summary>
|
||||
'''btnChangeImage control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnChangeImage As Global.DevExpress.Web.ASPxButton
|
||||
|
||||
'''<summary>
|
||||
'''btnInsertImageCancel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnInsertImageCancel As Global.DevExpress.Web.ASPxButton
|
||||
|
||||
'''<summary>
|
||||
'''dxHiddenField control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents dxHiddenField As Global.DevExpress.Web.ASPxHiddenField
|
||||
End Class
|
||||
@@ -0,0 +1,81 @@
|
||||
Imports System
|
||||
Imports System.Data
|
||||
Imports System.Configuration
|
||||
Imports System.Collections
|
||||
Imports System.IO
|
||||
Imports System.Web
|
||||
Imports System.Web.Security
|
||||
Imports System.Web.UI
|
||||
Imports System.Web.UI.WebControls
|
||||
Imports System.Web.UI.WebControls.WebParts
|
||||
Imports System.Web.UI.HtmlControls
|
||||
Imports DevExpress.Web.ASPxHtmlEditor
|
||||
Imports DevExpress.Web.ASPxHtmlEditor.Localization
|
||||
Imports DevExpress.Web
|
||||
|
||||
Partial Public Class InsertImageForm
|
||||
Inherits HtmlEditorUserControl
|
||||
|
||||
Protected Overrides Sub PrepareChildControls()
|
||||
ckbSaveToServer.ClientVisible = HtmlEditor.Settings.AllowInsertDirectImageUrls AndAlso Not String.IsNullOrEmpty(HtmlEditor.SettingsImageUpload.UploadImageFolder)
|
||||
rblFromThisComputer.ClientEnabled = Not String.IsNullOrEmpty(HtmlEditor.SettingsImageUpload.UploadImageFolder)
|
||||
uplImage.UploadMode = If(HtmlEditor.SettingsImageUpload.UseAdvancedUploadMode, UploadControlUploadMode.Advanced, UploadControlUploadMode.Standard)
|
||||
Localize()
|
||||
|
||||
MyBase.PrepareChildControls()
|
||||
|
||||
Dim imageSelectorEnabled As Boolean = HtmlEditor.SettingsImageSelector.Enabled
|
||||
txbInsertImageUrl.Buttons(0).Visible = imageSelectorEnabled
|
||||
BrowsePopup.Visible = imageSelectorEnabled
|
||||
End Sub
|
||||
Private Sub Localize()
|
||||
rblFromTheWeb.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertImage_FromWeb)
|
||||
rblFromThisComputer.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertImage_FromLocal)
|
||||
lblImageUrl.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertImage_EnterUrl) & ":"
|
||||
txbInsertImageUrl.ValidationSettings.RequiredField.ErrorText = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.RequiredFieldError)
|
||||
ckbSaveToServer.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertImage_SaveToServer)
|
||||
lblBrowse.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertImage_UploadInstructions) & ":"
|
||||
ckbMoreImageOptions.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertImage_MoreOptions)
|
||||
btnInsertImage.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ButtonInsert)
|
||||
btnChangeImage.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ButtonChange)
|
||||
btnInsertImageCancel.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ButtonCancel)
|
||||
BrowsePopup.HeaderText = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.SelectImage)
|
||||
txbInsertImageUrl.Buttons(0).ToolTip = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertImage_SelectImage)
|
||||
dxHiddenField.Add("RequiredFieldError", ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.RequiredFieldError))
|
||||
End Sub
|
||||
Protected Overrides Function GetChildDxEdits() As ASPxEditBase()
|
||||
Return New ASPxEditBase() {rblFromTheWeb, rblFromThisComputer, txbInsertImageUrl, ckbSaveToServer, ckbMoreImageOptions}
|
||||
End Function
|
||||
Protected Overrides Function GetChildDxButtons() As ASPxButton()
|
||||
Return New ASPxButton() {btnInsertImage, btnChangeImage, btnInsertImage, btnInsertImageCancel}
|
||||
End Function
|
||||
Protected Overrides Function GetChildDxHtmlEditorRoundPanel() As ASPxHtmlEditorRoundPanel
|
||||
Return rpInsertImage
|
||||
End Function
|
||||
|
||||
Protected Function SaveUploadFile() As String
|
||||
Dim fileName As String = ""
|
||||
If HasFile() Then
|
||||
Dim uploadFolder As String = HtmlEditor.SettingsImageUpload.UploadImageFolder
|
||||
fileName = MapPath(uploadFolder) + uplImage.UploadedFiles(0).FileName
|
||||
Try
|
||||
uplImage.UploadedFiles(0).SaveAs(fileName, False)
|
||||
Catch e1 As IOException
|
||||
fileName = MapPath(uploadFolder) + uplImage.GetRandomFileName()
|
||||
uplImage.UploadedFiles(0).SaveAs(fileName)
|
||||
End Try
|
||||
End If
|
||||
Return Path.GetFileName(fileName)
|
||||
End Function
|
||||
Protected Function HasFile() As Boolean
|
||||
Return uplImage.UploadedFiles IsNot Nothing AndAlso uplImage.UploadedFiles.Length > 0 AndAlso uplImage.UploadedFiles(0).FileName <> ""
|
||||
End Function
|
||||
Protected Sub uplImage_FileUploadComplete(ByVal sender As Object, ByVal args As DevExpress.Web.FileUploadCompleteEventArgs)
|
||||
Try
|
||||
args.CallbackData = SaveUploadFile()
|
||||
Catch e As Exception
|
||||
args.IsValid = False
|
||||
args.ErrorText = e.Message
|
||||
End Try
|
||||
End Sub
|
||||
End Class
|
||||
@@ -0,0 +1,239 @@
|
||||
<%@ Control Language="vb" AutoEventWireup="true" Inherits="InsertLinkForm" Codebehind="InsertLinkForm.ascx.vb" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web" TagPrefix="dxe" %>
|
||||
<%@ Register Assembly="DevExpress.Web.ASPxHtmlEditor.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxHtmlEditor" TagPrefix="dxhe" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web" TagPrefix="dxp" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web" TagPrefix="dx" %>
|
||||
<%@ Register Src="SelectDocumentForm.ascx" TagName="SelectDocumentForm" TagPrefix="ucip" %>
|
||||
<dxp:ASPxPanel ID="MainPanel" runat="server" Width="100%" DefaultButton="btnOk">
|
||||
<PanelCollection>
|
||||
<dxp:PanelContent runat="server">
|
||||
<table cellpadding="0" cellspacing="0" id="dxInsertLinkForm">
|
||||
<tr>
|
||||
<td class="contentCell">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="typeRadionButtonListCell">
|
||||
<dxe:ASPxRadioButtonList ID="rblLinkType" runat="server" ItemSpacing="22px" RepeatDirection="Horizontal"
|
||||
SelectedIndex="0" ClientInstanceName="_dxeRblLinkType">
|
||||
<ClientSideEvents SelectedIndexChanged="function(s, e) { OnTypeLinkChanged__InsertLinkForm(s); }" />
|
||||
<Border BorderStyle="None" />
|
||||
<Paddings PaddingLeft="0px" PaddingTop="0px" PaddingBottom="0px" />
|
||||
</dxe:ASPxRadioButtonList>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<dxhe:ASPxHtmlEditorRoundPanel ID="rpInsertLink" runat="server" Width="340px">
|
||||
<PanelCollection>
|
||||
<dxhe:HtmlEditorRoundPanelContent runat="server">
|
||||
<!-- URL -->
|
||||
<table cellpadding="0" cellspacing="0" id='<% =HtmlEditor.ClientID + "_dxeURLArea" %>'
|
||||
style="width: 100%">
|
||||
<tr>
|
||||
<td class="captionCell">
|
||||
<dxe:ASPxLabel ID="lblUrl" runat="server" AssociatedControlID="txbURL">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="inputCell">
|
||||
<dxe:ASPxButtonEdit ID="txbURL" ClientInstanceName="_dxeTxbURL" runat="server" Width="100%"
|
||||
AutoCompleteType="Disabled">
|
||||
<ClientSideEvents ButtonClick="function(s,e){aspxHEOnBrowseButtonClick();}" />
|
||||
<Buttons>
|
||||
<dxe:EditButton>
|
||||
</dxe:EditButton>
|
||||
</Buttons>
|
||||
<ValidationSettings ErrorDisplayMode="Text" ErrorTextPosition="Bottom" SetFocusOnError="True"
|
||||
ValidateOnLeave="False" ValidationGroup="_dxeTxbURLGroup">
|
||||
<RequiredField IsRequired="True" />
|
||||
<ErrorFrameStyle Font-Size="10px">
|
||||
</ErrorFrameStyle>
|
||||
</ValidationSettings>
|
||||
</dxe:ASPxButtonEdit>
|
||||
<dx:ASPxPopupControl ID="BrowsePopup" runat="server" CloseAction="CloseButton" PopupAction="None"
|
||||
PopupElementID="MainPanel" ClientInstanceName="BrowsePopup" PopupHorizontalAlign="Center"
|
||||
PopupVerticalAlign="Middle" AllowDragging="True" Modal="true" EnableAnimation="false" RenderMode="Lightweight">
|
||||
<ContentStyle Paddings-Padding="0px">
|
||||
</ContentStyle>
|
||||
<ClientSideEvents PopUp="function(s, e) { aspxHEOnBrowserPopupOpen(); }" CloseUp="function(s, e) { aspxHEOnBrowserPopupClose(); }" />
|
||||
<ModalBackgroundStyle Opacity="1">
|
||||
</ModalBackgroundStyle>
|
||||
<ContentCollection>
|
||||
<dx:PopupControlContentControl ID="PopupControlContentControl1" runat="server">
|
||||
<ucip:SelectDocumentForm ID="ucSelectDocumentForm" runat="server" />
|
||||
</dx:PopupControlContentControl>
|
||||
</ContentCollection>
|
||||
</dx:ASPxPopupControl>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<table cellpadding="0" cellspacing="0" id='<% =HtmlEditor.ClientID + "_dxeEmailArea" %>'
|
||||
style="display: none; width: 100%">
|
||||
<tr>
|
||||
<td class="captionCell">
|
||||
<dxe:ASPxLabel ID="lblEmailTo" runat="server" AssociatedControlID="txbEmailTo">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="inputCell">
|
||||
<dxe:ASPxTextBox ID="txbEmailTo" ClientInstanceName="_dxeTxbEmailTo" runat="server"
|
||||
Width="100%" AutoCompleteType="Disabled">
|
||||
<ValidationSettings ErrorDisplayMode="Text" ErrorTextPosition="Bottom" SetFocusOnError="True"
|
||||
ValidateOnLeave="False" ValidationGroup="_dxeTxbEmailToGroup">
|
||||
<RegularExpression ErrorText="Invalid e-mail" ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*" />
|
||||
<ErrorFrameStyle Font-Size="10px">
|
||||
</ErrorFrameStyle>
|
||||
<RequiredField IsRequired="True" />
|
||||
</ValidationSettings>
|
||||
</dxe:ASPxTextBox>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="captionCell">
|
||||
<dxe:ASPxLabel ID="lblSubject" runat="server" AssociatedControlID="txbSubject">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="inputCell">
|
||||
<dxe:ASPxTextBox ID="txbSubject" ClientInstanceName="_dxeTxbSubject" runat="server"
|
||||
Width="100%" AutoCompleteType="Disabled">
|
||||
</dxe:ASPxTextBox>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<table cellpadding="0" cellspacing="0" style="width: 100%">
|
||||
<tr>
|
||||
<td colspan="2" class="displayPropertiesCell">
|
||||
<dxe:ASPxLabel ID="lblLinkDisplay" runat="server">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="captionCell">
|
||||
<dxe:ASPxLabel ID="lblText" ClientInstanceName="_dxeLblText" runat="server" AssociatedControlID="txbText">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="inputCell">
|
||||
<dxe:ASPxTextBox ID="txbText" ClientInstanceName="_dxeTxbText" runat="server" Width="100%"
|
||||
AutoCompleteType="Disabled">
|
||||
</dxe:ASPxTextBox>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" class="separatorCell">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="captionCell">
|
||||
<dxe:ASPxLabel ID="lblToolTip" runat="server" AssociatedControlID="txbToolTip">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="inputCell">
|
||||
<dxe:ASPxTextBox ID="txbToolTip" ClientInstanceName="_dxeTxbToolTip" runat="server"
|
||||
Width="100%" AutoCompleteType="Disabled">
|
||||
</dxe:ASPxTextBox>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</dxhe:HtmlEditorRoundPanelContent>
|
||||
</PanelCollection>
|
||||
</dxhe:ASPxHtmlEditorRoundPanel>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td id='<% =HtmlEditor.ClientID + "_dxeTargetArea" %>' class="targetCheckBoxCell">
|
||||
<dxe:ASPxCheckBox ID="ckbOpenInNewWindow" ClientInstanceName="_dxeCkbOpenInNewWindow"
|
||||
runat="server">
|
||||
</dxe:ASPxCheckBox>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="buttonsCell">
|
||||
<table cellpadding="0" cellspacing="0" style="display: inline-block;">
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxButton ID="btnOk" runat="server" AutoPostBack="False" Height="23px" Width="74px"
|
||||
ClientInstanceName="_dxeBtnOk" CausesValidation="False">
|
||||
<ClientSideEvents Click="function(s, e) {OnOkButtonClick_InsertLinkForm();}" />
|
||||
</dxe:ASPxButton>
|
||||
<dxe:ASPxButton ID="btnChange" runat="server" AutoPostBack="False" Height="23px"
|
||||
Width="74px" ClientInstanceName="_dxeBtnChange" ClientVisible="False" CausesValidation="False">
|
||||
<ClientSideEvents Click="function(s, e) { OnOkButtonClick_InsertLinkForm(); }" />
|
||||
</dxe:ASPxButton>
|
||||
</td>
|
||||
<td class="cancelButton">
|
||||
<dxe:ASPxButton ID="btnCancel" runat="server" AutoPostBack="False" Height="23px"
|
||||
Width="74px" CausesValidation="False">
|
||||
<ClientSideEvents Click="function(s, e) {OnCancelButtonClick_InsertLinkForm();}" />
|
||||
</dxe:ASPxButton>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</dxp:PanelContent>
|
||||
</PanelCollection>
|
||||
</dxp:ASPxPanel>
|
||||
<script type="text/javascript" id="dxss_InsertLinkForm">
|
||||
function OnOkButtonClick_InsertLinkForm() {
|
||||
if (IsValidFields_InsertLinkForm())
|
||||
aspxDialogComplete(1, GetDialogData_InsertLinkForm());
|
||||
}
|
||||
function OnCancelButtonClick_InsertLinkForm() {
|
||||
aspxDialogComplete(0, GetDialogData_InsertLinkForm());
|
||||
}
|
||||
|
||||
function OnTypeLinkChanged__InsertLinkForm(radioButtonList) {
|
||||
var value = radioButtonList.GetValue();
|
||||
var urlArea = _aspxGetElementById('<% =HtmlEditor.ClientID + "_dxeURLArea" %>');
|
||||
var emailArea = _aspxGetElementById('<% =HtmlEditor.ClientID + "_dxeEmailArea" %>');
|
||||
var targetArea = _aspxGetElementById('<% =HtmlEditor.ClientID + "_dxeTargetArea" %>');
|
||||
|
||||
_aspxSetElementDisplay(urlArea, value == "URL");
|
||||
_aspxSetElementDisplay(targetArea, value == "URL");
|
||||
|
||||
_aspxSetElementDisplay(emailArea, value == "Email");
|
||||
}
|
||||
function IsValidFields_InsertLinkForm() {
|
||||
var ret = true;
|
||||
if (_dxeTxbEmailTo.IsVisible())
|
||||
ret = ASPxClientEdit.ValidateGroup("_dxeTxbEmailToGroup") && ret;
|
||||
if (_dxeTxbURL.IsVisible())
|
||||
ret = ASPxClientEdit.ValidateGroup("_dxeTxbURLGroup") && ret;
|
||||
return ret;
|
||||
}
|
||||
function GetDialogData_InsertLinkForm() {
|
||||
var res = new Object();
|
||||
res.subject = "";
|
||||
res.target = "";
|
||||
res.text = "";
|
||||
res.title = "";
|
||||
res.url = "";
|
||||
res.isCheckedOpenInNewWindow = false;
|
||||
|
||||
res.isCheckedOpenInNewWindow = _dxeCkbOpenInNewWindow.GetValue();
|
||||
res.isTextOnlySelected = _dxeTxbText.GetEnabled();
|
||||
res.url = _dxeRblLinkType.GetValue() == "Email" ? _dxeTxbEmailTo.GetValue() : _dxeTxbURL.GetValue();
|
||||
res.subject = _dxeTxbSubject.GetValue();
|
||||
res.text = _dxeTxbText.GetText();
|
||||
res.title = _dxeTxbToolTip.GetText();
|
||||
|
||||
return res;
|
||||
}
|
||||
function aspxHEOnBrowseButtonClick() {
|
||||
FileManager.browsePopup = BrowsePopup;
|
||||
BrowsePopup.Show();
|
||||
FileManager.Refresh();
|
||||
FileManager.Focus();
|
||||
}
|
||||
function aspxHEOnBrowserPopupOpen() {
|
||||
ASPxDialog.GetCurrentDialog().isPreventKeyPress = true;
|
||||
_aspxChangeAttribute(_aspxGetElementById('<% =HtmlEditor.ClientID + "_insertlinkdialog_MainPanel" %>'), "onkeypress", "");
|
||||
}
|
||||
function aspxHEOnBrowserPopupClose() {
|
||||
ASPxDialog.GetCurrentDialog().isPreventKeyPress = false;
|
||||
_aspxRestoreAttribute(_aspxGetElementById('<% =HtmlEditor.ClientID + "_insertlinkdialog_MainPanel" %>'), "onkeypress");
|
||||
_dxeTxbURL.Focus();
|
||||
}
|
||||
</script>
|
||||
@@ -0,0 +1,204 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class InsertLinkForm
|
||||
|
||||
'''<summary>
|
||||
'''MainPanel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents MainPanel As Global.DevExpress.Web.ASPxPanel
|
||||
|
||||
'''<summary>
|
||||
'''rblLinkType control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents rblLinkType As Global.DevExpress.Web.ASPxRadioButtonList
|
||||
|
||||
'''<summary>
|
||||
'''rpInsertLink control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents rpInsertLink As Global.DevExpress.Web.ASPxHtmlEditor.ASPxHtmlEditorRoundPanel
|
||||
|
||||
'''<summary>
|
||||
'''lblUrl control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblUrl As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''txbURL control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents txbURL As Global.DevExpress.Web.ASPxButtonEdit
|
||||
|
||||
'''<summary>
|
||||
'''BrowsePopup control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents BrowsePopup As Global.DevExpress.Web.ASPxPopupControl
|
||||
|
||||
'''<summary>
|
||||
'''PopupControlContentControl1 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents PopupControlContentControl1 As Global.DevExpress.Web.PopupControlContentControl
|
||||
|
||||
'''<summary>
|
||||
'''ucSelectDocumentForm control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ucSelectDocumentForm As Global.SelectDocumentForm
|
||||
|
||||
'''<summary>
|
||||
'''lblEmailTo control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblEmailTo As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''txbEmailTo control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents txbEmailTo As Global.DevExpress.Web.ASPxTextBox
|
||||
|
||||
'''<summary>
|
||||
'''lblSubject control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblSubject As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''txbSubject control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents txbSubject As Global.DevExpress.Web.ASPxTextBox
|
||||
|
||||
'''<summary>
|
||||
'''lblLinkDisplay control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblLinkDisplay As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''lblText control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblText As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''txbText control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents txbText As Global.DevExpress.Web.ASPxTextBox
|
||||
|
||||
'''<summary>
|
||||
'''lblToolTip control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblToolTip As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''txbToolTip control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents txbToolTip As Global.DevExpress.Web.ASPxTextBox
|
||||
|
||||
'''<summary>
|
||||
'''ckbOpenInNewWindow control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ckbOpenInNewWindow As Global.DevExpress.Web.ASPxCheckBox
|
||||
|
||||
'''<summary>
|
||||
'''btnOk control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnOk As Global.DevExpress.Web.ASPxButton
|
||||
|
||||
'''<summary>
|
||||
'''btnChange control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnChange As Global.DevExpress.Web.ASPxButton
|
||||
|
||||
'''<summary>
|
||||
'''btnCancel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnCancel As Global.DevExpress.Web.ASPxButton
|
||||
End Class
|
||||
@@ -0,0 +1,54 @@
|
||||
Imports System
|
||||
Imports System.Data
|
||||
Imports System.Configuration
|
||||
Imports System.Collections
|
||||
Imports System.Web
|
||||
Imports System.Web.Security
|
||||
Imports System.Web.UI
|
||||
Imports System.Web.UI.WebControls
|
||||
Imports System.Web.UI.WebControls.WebParts
|
||||
Imports System.Web.UI.HtmlControls
|
||||
Imports DevExpress.Web.ASPxHtmlEditor
|
||||
Imports DevExpress.Web.ASPxHtmlEditor.Localization
|
||||
Imports DevExpress.Web
|
||||
|
||||
Partial Public Class InsertLinkForm
|
||||
Inherits HtmlEditorUserControl
|
||||
Protected Overrides Sub PrepareChildControls()
|
||||
Localize()
|
||||
|
||||
MyBase.PrepareChildControls()
|
||||
|
||||
Dim documentSelectorEnabled As Boolean = HtmlEditor.SettingsDocumentSelector.Enabled
|
||||
txbURL.Buttons(0).Visible = documentSelectorEnabled
|
||||
BrowsePopup.Visible = documentSelectorEnabled
|
||||
End Sub
|
||||
Private Sub Localize()
|
||||
rblLinkType.Items.Add(ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertLink_Url), "URL")
|
||||
rblLinkType.Items.Add(ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertLink_Email), "Email")
|
||||
lblUrl.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertLink_Url) & ":"
|
||||
txbURL.ValidationSettings.RequiredField.ErrorText = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.RequiredFieldError)
|
||||
lblEmailTo.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertLink_EmailTo) & ":"
|
||||
txbEmailTo.ValidationSettings.RequiredField.ErrorText = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.RequiredFieldError)
|
||||
lblSubject.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertLink_Subject) & ":"
|
||||
lblLinkDisplay.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertLink_DisplayProperties)
|
||||
lblText.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertLink_Text) & ":"
|
||||
lblToolTip.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertLink_ToolTip) & ":"
|
||||
ckbOpenInNewWindow.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertLink_OpenInNewWindow)
|
||||
btnOk.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ButtonOk)
|
||||
btnChange.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ButtonChange)
|
||||
btnCancel.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ButtonCancel)
|
||||
BrowsePopup.HeaderText = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.SelectDocument)
|
||||
txbURL.Buttons(0).ToolTip = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertLink_SelectDocument)
|
||||
End Sub
|
||||
|
||||
Protected Overrides Function GetChildDxEdits() As ASPxEditBase()
|
||||
Return New ASPxEditBase() {rblLinkType, lblUrl, txbURL, lblEmailTo, txbEmailTo, lblSubject, txbSubject, lblLinkDisplay, lblText, txbText, lblToolTip, txbToolTip, ckbOpenInNewWindow}
|
||||
End Function
|
||||
Protected Overrides Function GetChildDxButtons() As ASPxButton()
|
||||
Return New ASPxButton() {btnOk, btnCancel, btnChange}
|
||||
End Function
|
||||
Protected Overrides Function GetChildDxHtmlEditorRoundPanel() As ASPxHtmlEditorRoundPanel
|
||||
Return rpInsertLink
|
||||
End Function
|
||||
End Class
|
||||
@@ -0,0 +1,456 @@
|
||||
<%@ Control Language="vb" AutoEventWireup="true" Inherits="InsertTableForm" Codebehind="InsertTableForm.ascx.vb" %>
|
||||
|
||||
<%@ Assembly name="DevExpress.Data.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" %>
|
||||
<%@ Register Assembly="DevExpress.Web.ASPxHtmlEditor.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxHtmlEditor"
|
||||
TagPrefix="dxhe" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web"
|
||||
TagPrefix="dxe" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web"
|
||||
TagPrefix="dxp" %>
|
||||
|
||||
<%@ Register Assembly="DevExpress.Web.ASPxHtmlEditor.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxHtmlEditor" TagPrefix="dxhe" %>
|
||||
|
||||
|
||||
<dxp:ASPxPanel ID="MainPanel" runat="server" Width="100%" DefaultButton="btnOk">
|
||||
<panelcollection>
|
||||
<dxp:PanelContent ID="PanelContent1" runat="server">
|
||||
<table cellpadding="0" cellspacing="0" id="dxInsertTableForm">
|
||||
<tr>
|
||||
<td class="contentCell">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td>
|
||||
<dxhe:ASPxHtmlEditorRoundPanel ID="rpSize" runat="server" Width="395px">
|
||||
<ContentPaddings PaddingTop="4px" />
|
||||
<PanelCollection>
|
||||
<dxhe:HtmlEditorRoundPanelContent ID="HtmlEditorRoundPanelContent1" runat="server">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="propGroupCell">
|
||||
<dxe:ASPxLabel ID="lblSize" runat="server">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="propGroupContentCell">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="captionCell">
|
||||
<dxe:ASPxLabel ID="lblColumns" runat="server" AssociatedControlID="spnColumns">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="inputCell">
|
||||
<dxe:ASPxSpinEdit ID="spnColumns" ClientInstanceName="_dxeSpnTableColumns" runat="server"
|
||||
Height="21px" Number="2" Width="57px" AllowNull="False" NumberType="Integer"
|
||||
MaxValue="50" MinValue="1">
|
||||
</dxe:ASPxSpinEdit>
|
||||
</td>
|
||||
<td>
|
||||
<div class="rowsHorizontalSeparator">
|
||||
</div>
|
||||
</td>
|
||||
<td class="rowsCaptionCell">
|
||||
<dxe:ASPxLabel ID="lblRows" runat="server" AssociatedControlID="spnRows">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="rowsInputCell">
|
||||
<dxe:ASPxSpinEdit ID="spnRows" ClientInstanceName="_dxeSpnTableRows" runat="server" Height="21px"
|
||||
Number="2" Width="57px" AllowNull="False" NumberType="Integer" MaxValue="10000"
|
||||
MinValue="1">
|
||||
</dxe:ASPxSpinEdit>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="5" class="rowsSeparator">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="captionCell">
|
||||
<dxe:ASPxLabel ID="lblWidth" runat="server" AssociatedControlID="cmbWidth">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="inputCell" colspan="3">
|
||||
<dxe:ASPxComboBox ID="cmbWidth" ClientInstanceName="_dxeCmbTableWidth" runat="server" ValueType="System.String" SelectedIndex="0"
|
||||
Width="140px">
|
||||
<ClientSideEvents SelectedIndexChanged="function(s, e) { OnCmdWidthSelectedIndexChanged_InsertTableForm(s); }" />
|
||||
<Items>
|
||||
<dxe:ListEditItem Value="100%" />
|
||||
<dxe:ListEditItem Value="" />
|
||||
<dxe:ListEditItem Value="custom" />
|
||||
</Items>
|
||||
</dxe:ASPxComboBox>
|
||||
</td>
|
||||
<td class="rowsInputCell" style="visibility: hidden;" id='<% =HtmlEditor.ClientID + "_dxeWidthSpinEditCell"%>' colspan="2">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxSpinEdit ID="txbWidth" ClientInstanceName="_dxeTxbTableWidth" runat="server" Height="21px"
|
||||
Number="0" Width="57px" AllowNull="False" NumberType="Float" MaxValue="10000"
|
||||
MinValue="0">
|
||||
</dxe:ASPxSpinEdit>
|
||||
</td>
|
||||
<td class="rowsInputCell">
|
||||
<dxe:ASPxComboBox ID="cmbWidthType" ClientInstanceName="_dxeCmbTableWidthType" runat="server"
|
||||
ValueType="System.String" SelectedIndex="0" Width="45px">
|
||||
<Items>
|
||||
<dxe:ListEditItem Value="px" />
|
||||
<dxe:ListEditItem Value="%" />
|
||||
</Items>
|
||||
</dxe:ASPxComboBox>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td colspan="4">
|
||||
<dxe:ASPxCheckBox ID="ckbColumnsEqualWidth" ClientInstanceName="_dxeCkbColumnsEqualWidth" Checked="true" runat="server">
|
||||
</dxe:ASPxCheckBox>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="5" class="separatorCell">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="captionCell">
|
||||
<dxe:ASPxLabel ID="lblHeight" runat="server" AssociatedControlID="cmbHeight">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="inputCell" colspan="3">
|
||||
<dxe:ASPxComboBox ID="cmbHeight" ClientInstanceName="_dxeCmbTableHeight" runat="server"
|
||||
ValueType="System.String" SelectedIndex="0" Width="140px">
|
||||
<ClientSideEvents SelectedIndexChanged="function(s, e) { OnCmdHeightSelectedIndexChanged_InsertTableForm(s); }" />
|
||||
<Items>
|
||||
<dxe:ListEditItem Value="" />
|
||||
<dxe:ListEditItem Value="custom" />
|
||||
</Items>
|
||||
</dxe:ASPxComboBox>
|
||||
</td>
|
||||
<td class="rowsInputCell" style="visibility: hidden;" id='<% =HtmlEditor.ClientID + "_dxeHeightSpinEditCell"%>' colspan="2">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxSpinEdit ID="txbHeight" ClientInstanceName="_dxeTxbTableHeight" runat="server" Height="21px"
|
||||
Number="0" Width="57px" AllowNull="False" NumberType="Float" MaxValue="10000"
|
||||
MinValue="0">
|
||||
</dxe:ASPxSpinEdit>
|
||||
</td>
|
||||
<td class="rowsInputCell">
|
||||
<dxe:ASPxComboBox ID="cmbHeightType" ClientInstanceName="_dxeCmbTableHeightType" runat="server"
|
||||
ValueType="System.String" SelectedIndex="0" Width="45px">
|
||||
<Items>
|
||||
<dxe:ListEditItem Value="px" />
|
||||
<dxe:ListEditItem Value="%" />
|
||||
</Items>
|
||||
</dxe:ASPxComboBox>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</dxhe:HtmlEditorRoundPanelContent>
|
||||
</PanelCollection>
|
||||
</dxhe:ASPxHtmlEditorRoundPanel>
|
||||
<div class="propGroupSeparator">
|
||||
</div>
|
||||
<!-- LAYOUT -->
|
||||
<dxhe:ASPxHtmlEditorRoundPanel ID="rpLayout" runat="server" Width="395px">
|
||||
<ContentPaddings PaddingTop="4px" />
|
||||
<PanelCollection>
|
||||
<dxhe:HtmlEditorRoundPanelContent ID="HtmlEditorRoundPanelContent4" runat="server">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="propGroupCell">
|
||||
<dxe:ASPxLabel ID="lblLayout" runat="server">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="propGroupContentCell">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="captionCell">
|
||||
<dxe:ASPxLabel ID="lblPadding" runat="server" AssociatedControlID="spnPadding">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="inputCell">
|
||||
<dxe:ASPxSpinEdit ID="spnPadding" ClientInstanceName="_dxeSpnCellPadding" runat="server"
|
||||
Height="21px" Number="3" Width="52px" AllowNull="False" NumberType="Integer"
|
||||
MaxValue="10000" MinValue="0">
|
||||
</dxe:ASPxSpinEdit>
|
||||
</td>
|
||||
<td>
|
||||
<div class="propFieldSeparator">
|
||||
</div>
|
||||
</td>
|
||||
<td class="captionCell">
|
||||
<dxe:ASPxLabel ID="lblAlign" runat="server" AssociatedControlID="cmbAlign">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="inputCell">
|
||||
<dxe:ASPxComboBox ID="cmbAlign" runat="server" ValueType="System.String" ClientInstanceName="_dxeCmbTableAlign"
|
||||
SelectedIndex="0" Width="70px">
|
||||
<Items>
|
||||
<dxe:ListEditItem Value="" />
|
||||
<dxe:ListEditItem Value="left" />
|
||||
<dxe:ListEditItem Value="center" />
|
||||
<dxe:ListEditItem Value="right" />
|
||||
</Items>
|
||||
</dxe:ASPxComboBox>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="5" class="separatorCell">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="captionCell">
|
||||
<dxe:ASPxLabel ID="lblSpacing" runat="server" AssociatedControlID="spnSpacing">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="inputCell" colspan="3">
|
||||
<dxe:ASPxSpinEdit ID="spnSpacing" ClientInstanceName="_dxeSpnCellSpacing" runat="server"
|
||||
Height="21px" Number="0" Width="52px" AllowNull="False" NumberType="Integer"
|
||||
MaxValue="10000" MinValue="0">
|
||||
</dxe:ASPxSpinEdit>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</dxhe:HtmlEditorRoundPanelContent>
|
||||
</PanelCollection>
|
||||
</dxhe:ASPxHtmlEditorRoundPanel>
|
||||
<div class="propGroupSeparator">
|
||||
</div>
|
||||
<!-- APPEARANCE -->
|
||||
<dxhe:ASPxHtmlEditorRoundPanel ID="rpAppearance" runat="server" Width="395px">
|
||||
<ContentPaddings PaddingTop="4px" />
|
||||
<PanelCollection>
|
||||
<dxhe:HtmlEditorRoundPanelContent ID="HtmlEditorRoundPanelContent3" runat="server">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="propGroupCell">
|
||||
<dxe:ASPxLabel ID="lblAppearance" runat="server">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="propGroupContentCell">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="captionCell">
|
||||
<dxe:ASPxLabel ID="lblBorderColor" runat="server" AssociatedControlID="txbBorderColor">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="inputCell">
|
||||
<dxe:ASPxColorEdit ID="txbBorderColor" runat="server"
|
||||
ClientInstanceName="_dxeTxbTableBorderColor" Width="100px" Color="#000000">
|
||||
</dxe:ASPxColorEdit>
|
||||
</td>
|
||||
<td>
|
||||
<div class="propFieldSeparator">
|
||||
</div>
|
||||
</td>
|
||||
<td class="captionCell">
|
||||
<dxe:ASPxLabel ID="lblBorderSize" runat="server" AssociatedControlID="spnBorderSize">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="inputCell">
|
||||
<dxe:ASPxSpinEdit ID="spnBorderSize" ClientInstanceName="_dxeSpnTableBorderSize" runat="server"
|
||||
Height="21px" Number="1" Width="40px" AllowNull="False" NumberType="Integer"
|
||||
MaxValue="10000" MinValue="0">
|
||||
</dxe:ASPxSpinEdit>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="5" class="separatorCell">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="captionCell">
|
||||
<dxe:ASPxLabel ID="lblBackgroundColor" runat="server" AssociatedControlID="txbBackgroundColor">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="inputCell" colspan="3">
|
||||
<dxe:ASPxColorEdit ID="txbBackgroundColor" runat="server"
|
||||
ClientInstanceName="_dxeTxbTableBackgroundColor" Width="100px" Color="">
|
||||
</dxe:ASPxColorEdit>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</dxhe:HtmlEditorRoundPanelContent>
|
||||
</PanelCollection>
|
||||
</dxhe:ASPxHtmlEditorRoundPanel>
|
||||
<div class="propGroupSeparator">
|
||||
</div>
|
||||
<div class="accessibilityPropGroupCell">
|
||||
<dxe:ASPxCheckBox ID="ckbAccessibility" runat="server">
|
||||
<ClientSideEvents CheckedChanged="function(s, e) { OnAccessibilityCheckBoxCheckedChanged(s) }" />
|
||||
</dxe:ASPxCheckBox>
|
||||
</div>
|
||||
<dxhe:ASPxHtmlEditorRoundPanel ID="rpAccessibility" runat="server" ClientVisible="false" ClientInstanceName="_dxeRPAccessibility" Width="395px">
|
||||
<PanelCollection>
|
||||
<dxhe:HtmlEditorRoundPanelContent ID="HtmlEditorRoundPanelContent2" runat="server">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="propGroupContentCell">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="captionCell">
|
||||
<dxe:ASPxLabel ID="lblHeaders" runat="server" AssociatedControlID="cmbHeaders">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="inputCell">
|
||||
<dxe:ASPxComboBox ID="cmbHeaders" runat="server" ValueType="System.String" ClientInstanceName="_dxeCmbTableHeaders"
|
||||
SelectedIndex="0" Width="100px">
|
||||
<ClientSideEvents SelectedIndexChanged="function(s, e) { }" />
|
||||
<Items>
|
||||
<dxe:ListEditItem Value="" />
|
||||
<dxe:ListEditItem Value="row" />
|
||||
<dxe:ListEditItem Value="column" />
|
||||
<dxe:ListEditItem Value="both" />
|
||||
</Items>
|
||||
</dxe:ASPxComboBox>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" class="separatorCell"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="captionCell">
|
||||
<dxe:ASPxLabel ID="lblCaption" runat="server" AssociatedControlID="txbCaption">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="inputCell">
|
||||
<dxe:ASPxTextBox ID="txbCaption" runat="server" Width="190px" ClientInstanceName="_dxeTxbTableCaption">
|
||||
</dxe:ASPxTextBox>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" class="separatorCell"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="captionCell">
|
||||
<dxe:ASPxLabel ID="lblSummary" runat="server" AssociatedControlID="txbSummary">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="inputCell">
|
||||
<dxe:ASPxTextBox ID="txbSummary" runat="server" Width="190px" ClientInstanceName="_dxeTxbTableSummary">
|
||||
</dxe:ASPxTextBox>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</dxhe:HtmlEditorRoundPanelContent>
|
||||
</PanelCollection>
|
||||
</dxhe:ASPxHtmlEditorRoundPanel>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="buttonsCell">
|
||||
<table cellpadding="0" cellspacing="0" style="display:inline-block;">
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxButton ID="btnOk" runat="server" AutoPostBack="False" Height="23px" Width="74px" CausesValidation="False">
|
||||
<ClientSideEvents Click="function(s, e) {OnOkButtonClick_InsertTableForm();}" />
|
||||
</dxe:ASPxButton>
|
||||
</td>
|
||||
<td class="cancelButton">
|
||||
<dxe:ASPxButton ID="btnCancel" runat="server" AutoPostBack="False" Height="23px"
|
||||
Width="74px" CausesValidation="False">
|
||||
<ClientSideEvents Click="function(s, e) {OnCancelButtonClick_InsertTableForm();}" />
|
||||
</dxe:ASPxButton>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</dxp:PanelContent>
|
||||
</panelcollection>
|
||||
</dxp:ASPxPanel>
|
||||
|
||||
<script type="text/javascript" id="dxss_InsertTableForm">
|
||||
function OnOkButtonClick_InsertTableForm() {
|
||||
aspxDialogComplete(1, GetDialogData_InsertTableForm());
|
||||
}
|
||||
function OnCancelButtonClick_InsertTableForm() {
|
||||
aspxDialogComplete(0, null);
|
||||
}
|
||||
function GetDialogData_InsertTableForm() {
|
||||
var res = new Object();
|
||||
res.tableProperties = {};
|
||||
|
||||
// common
|
||||
res.rows = _dxeSpnTableRows.GetNumber();
|
||||
res.columns = _dxeSpnTableColumns.GetNumber();
|
||||
res.isColumnEqualWidth = _dxeCkbColumnsEqualWidth.GetChecked();
|
||||
|
||||
// tableProperties
|
||||
res.tableProperties.cellSpacing = _dxeSpnCellSpacing.GetNumber();
|
||||
res.tableProperties.cellPadding = _dxeSpnCellPadding.GetNumber();
|
||||
|
||||
res.tableProperties.width = GetWidth_InsertTableForm();
|
||||
res.tableProperties.height = GetHeight_InsertTableForm();
|
||||
|
||||
res.tableProperties.borderColor = _dxeTxbTableBorderColor.GetValue();
|
||||
res.tableProperties.borderWidth = _dxeSpnTableBorderSize.GetNumber();
|
||||
res.tableProperties.backgroundColor = _dxeTxbTableBackgroundColor.GetValue();
|
||||
|
||||
res.tableProperties.align = GetAlign_InsertTableForm();
|
||||
res.tableProperties.accessibility = GetAccessibilityProperties_InsertTableForm();
|
||||
return res;
|
||||
}
|
||||
|
||||
function GetAccessibilityProperties_InsertTableForm() {
|
||||
var accessibilityProp = {};
|
||||
accessibilityProp.summary = _dxeTxbTableSummary.GetText();
|
||||
accessibilityProp.caption = _dxeTxbTableCaption.GetText();
|
||||
accessibilityProp.headers = _dxeCmbTableHeaders.GetValue();
|
||||
return accessibilityProp;
|
||||
}
|
||||
function GetAlign_InsertTableForm() {
|
||||
var align = _dxeCmbTableAlign.GetValue();
|
||||
if (align)
|
||||
align = align.toLowerCase();
|
||||
return align;
|
||||
}
|
||||
function GetWidth_InsertTableForm() {
|
||||
var width = _dxeCmbTableWidth.GetValue();
|
||||
if (width == "custom")
|
||||
width = _dxeTxbTableWidth.GetValue() + _dxeCmbTableWidthType.GetValue();
|
||||
return width;
|
||||
}
|
||||
function GetHeight_InsertTableForm() {
|
||||
var height = _dxeCmbTableHeight.GetValue();
|
||||
if (height == "custom")
|
||||
height = _dxeTxbTableHeight.GetValue() + _dxeCmbTableHeightType.GetValue();
|
||||
return height;
|
||||
}
|
||||
|
||||
function OnAccessibilityCheckBoxCheckedChanged(accessibilityCheckBox) {
|
||||
_dxeRPAccessibility.SetClientVisible(accessibilityCheckBox.GetChecked());
|
||||
}
|
||||
function OnCmdWidthSelectedIndexChanged_InsertTableForm(widthCombox) {
|
||||
_aspxSetElementVisibility(_aspxGetElementById('<% =HtmlEditor.ClientID + "_dxeWidthSpinEditCell"%>'), widthCombox.GetValue() == "custom");
|
||||
}
|
||||
function OnCmdHeightSelectedIndexChanged_InsertTableForm(heightCombox) {
|
||||
_aspxSetElementVisibility(_aspxGetElementById('<% =HtmlEditor.ClientID + "_dxeHeightSpinEditCell"%>'), heightCombox.GetValue() == "custom");
|
||||
}
|
||||
</script>
|
||||
@@ -0,0 +1,438 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class InsertTableForm
|
||||
|
||||
'''<summary>
|
||||
'''MainPanel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents MainPanel As Global.DevExpress.Web.ASPxPanel
|
||||
|
||||
'''<summary>
|
||||
'''PanelContent1 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents PanelContent1 As Global.DevExpress.Web.PanelContent
|
||||
|
||||
'''<summary>
|
||||
'''rpSize control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents rpSize As Global.DevExpress.Web.ASPxHtmlEditor.ASPxHtmlEditorRoundPanel
|
||||
|
||||
'''<summary>
|
||||
'''HtmlEditorRoundPanelContent1 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents HtmlEditorRoundPanelContent1 As Global.DevExpress.Web.ASPxHtmlEditor.HtmlEditorRoundPanelContent
|
||||
|
||||
'''<summary>
|
||||
'''lblSize control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblSize As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''lblColumns control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblColumns As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''spnColumns control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents spnColumns As Global.DevExpress.Web.ASPxSpinEdit
|
||||
|
||||
'''<summary>
|
||||
'''lblRows control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblRows As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''spnRows control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents spnRows As Global.DevExpress.Web.ASPxSpinEdit
|
||||
|
||||
'''<summary>
|
||||
'''lblWidth control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblWidth As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''cmbWidth control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents cmbWidth As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''txbWidth control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents txbWidth As Global.DevExpress.Web.ASPxSpinEdit
|
||||
|
||||
'''<summary>
|
||||
'''cmbWidthType control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents cmbWidthType As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''ckbColumnsEqualWidth control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ckbColumnsEqualWidth As Global.DevExpress.Web.ASPxCheckBox
|
||||
|
||||
'''<summary>
|
||||
'''lblHeight control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblHeight As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''cmbHeight control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents cmbHeight As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''txbHeight control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents txbHeight As Global.DevExpress.Web.ASPxSpinEdit
|
||||
|
||||
'''<summary>
|
||||
'''cmbHeightType control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents cmbHeightType As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''rpLayout control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents rpLayout As Global.DevExpress.Web.ASPxHtmlEditor.ASPxHtmlEditorRoundPanel
|
||||
|
||||
'''<summary>
|
||||
'''HtmlEditorRoundPanelContent4 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents HtmlEditorRoundPanelContent4 As Global.DevExpress.Web.ASPxHtmlEditor.HtmlEditorRoundPanelContent
|
||||
|
||||
'''<summary>
|
||||
'''lblLayout control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblLayout As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''lblPadding control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblPadding As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''spnPadding control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents spnPadding As Global.DevExpress.Web.ASPxSpinEdit
|
||||
|
||||
'''<summary>
|
||||
'''lblAlign control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblAlign As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''cmbAlign control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents cmbAlign As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''lblSpacing control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblSpacing As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''spnSpacing control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents spnSpacing As Global.DevExpress.Web.ASPxSpinEdit
|
||||
|
||||
'''<summary>
|
||||
'''rpAppearance control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents rpAppearance As Global.DevExpress.Web.ASPxHtmlEditor.ASPxHtmlEditorRoundPanel
|
||||
|
||||
'''<summary>
|
||||
'''HtmlEditorRoundPanelContent3 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents HtmlEditorRoundPanelContent3 As Global.DevExpress.Web.ASPxHtmlEditor.HtmlEditorRoundPanelContent
|
||||
|
||||
'''<summary>
|
||||
'''lblAppearance control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblAppearance As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''lblBorderColor control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblBorderColor As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''txbBorderColor control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents txbBorderColor As Global.DevExpress.Web.ASPxColorEdit
|
||||
|
||||
'''<summary>
|
||||
'''lblBorderSize control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblBorderSize As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''spnBorderSize control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents spnBorderSize As Global.DevExpress.Web.ASPxSpinEdit
|
||||
|
||||
'''<summary>
|
||||
'''lblBackgroundColor control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblBackgroundColor As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''txbBackgroundColor control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents txbBackgroundColor As Global.DevExpress.Web.ASPxColorEdit
|
||||
|
||||
'''<summary>
|
||||
'''ckbAccessibility control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ckbAccessibility As Global.DevExpress.Web.ASPxCheckBox
|
||||
|
||||
'''<summary>
|
||||
'''rpAccessibility control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents rpAccessibility As Global.DevExpress.Web.ASPxHtmlEditor.ASPxHtmlEditorRoundPanel
|
||||
|
||||
'''<summary>
|
||||
'''HtmlEditorRoundPanelContent2 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents HtmlEditorRoundPanelContent2 As Global.DevExpress.Web.ASPxHtmlEditor.HtmlEditorRoundPanelContent
|
||||
|
||||
'''<summary>
|
||||
'''lblHeaders control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblHeaders As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''cmbHeaders control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents cmbHeaders As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''lblCaption control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblCaption As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''txbCaption control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents txbCaption As Global.DevExpress.Web.ASPxTextBox
|
||||
|
||||
'''<summary>
|
||||
'''lblSummary control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblSummary As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''txbSummary control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents txbSummary As Global.DevExpress.Web.ASPxTextBox
|
||||
|
||||
'''<summary>
|
||||
'''btnOk control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnOk As Global.DevExpress.Web.ASPxButton
|
||||
|
||||
'''<summary>
|
||||
'''btnCancel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnCancel As Global.DevExpress.Web.ASPxButton
|
||||
End Class
|
||||
@@ -0,0 +1,66 @@
|
||||
Imports System
|
||||
Imports System.Collections.Generic
|
||||
Imports System.Web
|
||||
Imports System.Web.UI
|
||||
Imports System.Web.UI.WebControls
|
||||
Imports DevExpress.Web.ASPxHtmlEditor
|
||||
Imports DevExpress.Web
|
||||
Imports DevExpress.Web.ASPxHtmlEditor.Localization
|
||||
|
||||
Partial Public Class InsertTableForm
|
||||
Inherits HtmlEditorUserControl
|
||||
Protected Overrides Sub PrepareChildControls()
|
||||
Localize()
|
||||
|
||||
MyBase.PrepareChildControls()
|
||||
End Sub
|
||||
Private Sub Localize()
|
||||
btnOk.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ButtonOk)
|
||||
btnCancel.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ButtonCancel)
|
||||
|
||||
lblSize.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Size) & ":"
|
||||
lblColumns.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Columns) & ":"
|
||||
lblRows.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Rows) & ":"
|
||||
lblWidth.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Width) & ":"
|
||||
lblHeight.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Height) & ":"
|
||||
cmbWidth.Items(0).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_FullWidth)
|
||||
cmbWidth.Items(1).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_AutoFitToContent)
|
||||
cmbWidth.Items(2).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Custom)
|
||||
ckbColumnsEqualWidth.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_EqualColumnWidths)
|
||||
|
||||
cmbHeight.Items(0).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_AutoFitToContent)
|
||||
cmbHeight.Items(1).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Custom)
|
||||
|
||||
lblLayout.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Layout) & ":"
|
||||
lblPadding.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_CellPaddings) & ":"
|
||||
lblAlign.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Alignment) & ":"
|
||||
cmbAlign.Items(0).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_None)
|
||||
cmbAlign.Items(1).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Alignment_Left)
|
||||
cmbAlign.Items(2).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Alignment_Center)
|
||||
cmbAlign.Items(3).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Alignment_Right)
|
||||
lblSpacing.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_CellSpacing) & ":"
|
||||
|
||||
lblAppearance.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Appearance) & ":"
|
||||
lblBorderColor.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_BorderColor) & ":"
|
||||
lblBorderSize.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_BorderSize) & ":"
|
||||
lblBackgroundColor.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_BgColor) & ":"
|
||||
|
||||
ckbAccessibility.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Accessibility)
|
||||
lblHeaders.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Headers) & ":"
|
||||
cmbHeaders.Items(0).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_None)
|
||||
cmbHeaders.Items(1).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_FirstRow)
|
||||
cmbHeaders.Items(2).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_FirstColumn)
|
||||
cmbHeaders.Items(3).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Both)
|
||||
lblCaption.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Caption) & ":"
|
||||
lblSummary.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Summary) & ":"
|
||||
End Sub
|
||||
Protected Overrides Function GetChildDxEdits() As ASPxEditBase()
|
||||
Return New ASPxEditBase() { spnRows, spnColumns, lblLayout, lblSize, lblWidth, cmbWidth, txbWidth, lblHeight, cmbHeight, txbHeight, spnPadding, spnSpacing, cmbAlign, lblAppearance, lblBorderSize, lblBorderColor, spnBorderSize, txbBorderColor, txbBackgroundColor, ckbAccessibility, cmbHeaders, txbCaption, txbSummary, ckbColumnsEqualWidth, cmbWidthType, cmbHeightType}
|
||||
End Function
|
||||
Protected Overrides Function GetChildDxButtons() As ASPxButton()
|
||||
Return New ASPxButton() { btnOk, btnCancel }
|
||||
End Function
|
||||
Protected Overrides Function GetChildDxHtmlEditorRoundPanels() As ASPxHtmlEditorRoundPanel()
|
||||
Return New ASPxHtmlEditorRoundPanel() { rpSize, rpLayout, rpAppearance, rpAccessibility }
|
||||
End Function
|
||||
End Class
|
||||
@@ -0,0 +1,78 @@
|
||||
<%@ Control Language="vb" AutoEventWireup="true" Inherits="PasteFromWordForm" Codebehind="PasteFromWordForm.ascx.vb" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web" TagPrefix="dxe" %>
|
||||
<%@ Register Assembly="DevExpress.Web.ASPxHtmlEditor.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxHtmlEditor" TagPrefix="dxhe" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web" TagPrefix="dxp" %>
|
||||
|
||||
<%-- B141214 --%>
|
||||
<dxe:ASPxLabel ID="lblB141214" runat="server" Style="display: none;" />
|
||||
|
||||
<dxp:ASPxPanel ID="MainPanel" runat="server" Width="100%" DefaultButton="btnOk" RenderMode="Table">
|
||||
<PanelCollection>
|
||||
<dxp:PanelContent ID="PanelContent1" runat="server">
|
||||
<table cellpadding="0" cellspacing="0" id="dxPasteFromWordForm">
|
||||
<tr>
|
||||
<td class="contentCell">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxLabel ID="lblDescription" runat="server">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="pasteContainerCell">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td>
|
||||
<iframe id='<% =HtmlEditor.ClientID + "_dxePasteFromWordContainer"%>' class="pasteContainer" title='<% =DevExpress.Web.ASPxHtmlEditor.Localization.ASPxHtmlEditorLocalizer.GetString(DevExpress.Web.ASPxHtmlEditor.Localization.ASPxHtmlEditorStringId.PasteRtf_Instructions)%>'>
|
||||
</iframe>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="checkBoxCell">
|
||||
<dxe:ASPxCheckBox ID="ckbStripFont" runat="server" ClientInstanceName="_dxeCkbStripFont">
|
||||
</dxe:ASPxCheckBox>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="buttonsCell">
|
||||
<table cellpadding="0" cellspacing="0" style="display:inline-block;">
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxButton ID="btnOk" runat="server" AutoPostBack="False" Height="23px"
|
||||
Width="74px" ClientInstanceName="_dxeBtnOk" CausesValidation="False" >
|
||||
<clientsideevents click="function(s, e) {OnOkButtonClick_PasteFromWordForm();}" />
|
||||
</dxe:ASPxButton>
|
||||
</td>
|
||||
<td class="cancelButton">
|
||||
<dxe:ASPxButton ID="btnCancel" runat="server" AutoPostBack="False"
|
||||
Height="23px" Width="74px" CausesValidation="False" >
|
||||
<clientsideevents click="function(s, e) {OnCancelButtonClick_PasteFromWordForm();}" />
|
||||
</dxe:ASPxButton>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</dxp:PanelContent>
|
||||
</PanelCollection>
|
||||
</dxp:ASPxPanel>
|
||||
<script type="text/javascript" id="dxss_PasteFromWordForm">
|
||||
function OnOkButtonClick_PasteFromWordForm() {
|
||||
var res = {
|
||||
html: ASPxIFrame.GetDocumentBody('<% =HtmlEditor.ClientID + "_dxePasteFromWordContainer"%>').innerHTML,
|
||||
stripFontFamily: _dxeCkbStripFont.GetChecked()
|
||||
};
|
||||
aspxDialogComplete(1, res);
|
||||
}
|
||||
function OnCancelButtonClick_PasteFromWordForm() {
|
||||
aspxDialogComplete(0, null);
|
||||
}
|
||||
</script>
|
||||
@@ -0,0 +1,78 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class PasteFromWordForm
|
||||
|
||||
'''<summary>
|
||||
'''lblB141214 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblB141214 As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''MainPanel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents MainPanel As Global.DevExpress.Web.ASPxPanel
|
||||
|
||||
'''<summary>
|
||||
'''PanelContent1 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents PanelContent1 As Global.DevExpress.Web.PanelContent
|
||||
|
||||
'''<summary>
|
||||
'''lblDescription control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblDescription As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''ckbStripFont control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ckbStripFont As Global.DevExpress.Web.ASPxCheckBox
|
||||
|
||||
'''<summary>
|
||||
'''btnOk control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnOk As Global.DevExpress.Web.ASPxButton
|
||||
|
||||
'''<summary>
|
||||
'''btnCancel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnCancel As Global.DevExpress.Web.ASPxButton
|
||||
End Class
|
||||
@@ -0,0 +1,36 @@
|
||||
Imports System
|
||||
Imports System.Data
|
||||
Imports System.Configuration
|
||||
Imports System.Collections
|
||||
Imports System.Web
|
||||
Imports System.Web.Security
|
||||
Imports System.Web.UI
|
||||
Imports System.Web.UI.WebControls
|
||||
Imports System.Web.UI.WebControls.WebParts
|
||||
Imports System.Web.UI.HtmlControls
|
||||
Imports DevExpress.Web.ASPxHtmlEditor
|
||||
Imports DevExpress.Web.ASPxHtmlEditor.Localization
|
||||
Imports DevExpress.Web
|
||||
Imports DevExpress.Web.Internal
|
||||
|
||||
Partial Public Class PasteFromWordForm
|
||||
Inherits HtmlEditorUserControl
|
||||
Protected Overrides Sub PrepareChildControls()
|
||||
Localize()
|
||||
lblB141214.Visible = RenderUtils.Browser.IsChrome ' B141214
|
||||
|
||||
MyBase.PrepareChildControls()
|
||||
End Sub
|
||||
Private Sub Localize()
|
||||
lblDescription.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.PasteRtf_Instructions)
|
||||
ckbStripFont.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.PasteRtf_StripFont)
|
||||
btnOk.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ButtonOk)
|
||||
btnCancel.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ButtonCancel)
|
||||
End Sub
|
||||
Protected Overrides Function GetChildDxEdits() As ASPxEditBase()
|
||||
Return New ASPxEditBase() { lblDescription, ckbStripFont }
|
||||
End Function
|
||||
Protected Overrides Function GetChildDxButtons() As ASPxButton()
|
||||
Return New ASPxButton() { btnOk, btnCancel }
|
||||
End Function
|
||||
End Class
|
||||
@@ -0,0 +1,65 @@
|
||||
<%@ Control Language="vb" AutoEventWireup="true" Inherits="SelectDocumentForm" Codebehind="SelectDocumentForm.ascx.vb" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web" TagPrefix="dx" %>
|
||||
|
||||
|
||||
|
||||
<%@ Register Assembly="DevExpress.Web.ASPxHtmlEditor.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxHtmlEditor" TagPrefix="dx" %>
|
||||
<script type="text/javascript" id="dxss_SelectDocumentForm">
|
||||
function aspxHESelectDocumentForm_OnSelectedFileChanged(s, e) {
|
||||
dxheSelectDocumentForm_SelectButton.SetEnabled(!!e.file);
|
||||
}
|
||||
function aspxHEClosePopup() {
|
||||
BrowsePopup.Hide();
|
||||
}
|
||||
function aspxHESelectDocumentForm_DocumentSelected() {
|
||||
aspxHEClosePopup();
|
||||
var documentUrl = FileManager.cp_RootFolderRelativePath + FileManager.GetSelectedFile().GetFullName("\/", true);
|
||||
_dxeTxbURL.SetText(documentUrl);
|
||||
_dxeTxbURL.Validate();
|
||||
}
|
||||
function aspxHESelectDocumentForm_Canceled() {
|
||||
aspxHEClosePopup();
|
||||
}
|
||||
</script>
|
||||
<dx:ASPxPanel ID="MainPanel" runat="server" Width="100%" DefaultButton="SelectButton">
|
||||
<PanelCollection>
|
||||
<dx:PanelContent ID="PanelContent1" runat="server">
|
||||
<table cellpadding="0" cellspacing="0" id="dxSelectDocumentForm">
|
||||
<tr>
|
||||
<td>
|
||||
<dx:HtmlEditorFileManager ID="FileManager" runat="server" Height="500px" Width="800px" ClientInstanceName="FileManager" OnCustomJSProperties="FileManager_CustomJSProperties" Border-BorderStyle="None">
|
||||
<ClientSideEvents SelectedFileChanged="aspxHESelectDocumentForm_OnSelectedFileChanged" SelectedFileOpened="aspxHESelectDocumentForm_DocumentSelected" />
|
||||
<Styles>
|
||||
<FolderContainer Width="250px">
|
||||
</FolderContainer>
|
||||
<File>
|
||||
<Margins Margin="1px"></Margins>
|
||||
</File>
|
||||
</Styles>
|
||||
</dx:HtmlEditorFileManager>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="buttonsCell">
|
||||
<table cellpadding="0" cellspacing="0" style="display:inline-block;">
|
||||
<tr>
|
||||
<td>
|
||||
<dx:ASPxButton ID="SelectButton" runat="server" AutoPostBack="False" Height="23px"
|
||||
Width="74px" CausesValidation="False" ClientEnabled="false" ClientInstanceName="dxheSelectDocumentForm_SelectButton">
|
||||
<ClientSideEvents Click="aspxHESelectDocumentForm_DocumentSelected" />
|
||||
</dx:ASPxButton>
|
||||
</td>
|
||||
<td class="cancelButton">
|
||||
<dx:ASPxButton ID="CancelButton" runat="server" AutoPostBack="False" Height="23px"
|
||||
Width="74px" CausesValidation="False">
|
||||
<ClientSideEvents Click="aspxHESelectDocumentForm_Canceled" />
|
||||
</dx:ASPxButton>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</dx:PanelContent>
|
||||
</PanelCollection>
|
||||
</dx:ASPxPanel>
|
||||
@@ -0,0 +1,60 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class SelectDocumentForm
|
||||
|
||||
'''<summary>
|
||||
'''MainPanel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents MainPanel As Global.DevExpress.Web.ASPxPanel
|
||||
|
||||
'''<summary>
|
||||
'''PanelContent1 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents PanelContent1 As Global.DevExpress.Web.PanelContent
|
||||
|
||||
'''<summary>
|
||||
'''FileManager control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents FileManager As Global.DevExpress.Web.ASPxHtmlEditor.HtmlEditorFileManager
|
||||
|
||||
'''<summary>
|
||||
'''SelectButton control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents SelectButton As Global.DevExpress.Web.ASPxButton
|
||||
|
||||
'''<summary>
|
||||
'''CancelButton control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents CancelButton As Global.DevExpress.Web.ASPxButton
|
||||
End Class
|
||||
@@ -0,0 +1,69 @@
|
||||
Imports System
|
||||
Imports System.Collections.Generic
|
||||
Imports System.Web
|
||||
Imports System.Web.UI
|
||||
Imports System.Web.UI.WebControls
|
||||
Imports DevExpress.Web.ASPxHtmlEditor
|
||||
Imports DevExpress.Web
|
||||
Imports DevExpress.Web.ASPxHtmlEditor.Localization
|
||||
Imports DevExpress.Web.Internal
|
||||
|
||||
Partial Public Class SelectDocumentForm
|
||||
Inherits HtmlEditorUserControl
|
||||
Protected Overrides Sub PrepareChildControls()
|
||||
Localize()
|
||||
|
||||
MyBase.PrepareChildControls()
|
||||
|
||||
PrepareFileManager()
|
||||
End Sub
|
||||
Private Sub Localize()
|
||||
SelectButton.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ButtonSelect)
|
||||
CancelButton.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ButtonCancel)
|
||||
End Sub
|
||||
Protected Overrides Function GetChildDxEdits() As ASPxEditBase()
|
||||
Return New ASPxEditBase() { }
|
||||
End Function
|
||||
Protected Overrides Function GetChildDxButtons() As ASPxButton()
|
||||
Return New ASPxButton() { SelectButton, CancelButton }
|
||||
End Function
|
||||
Protected Overrides Function GetChildDxHtmlEditorRoundPanels() As ASPxHtmlEditorRoundPanel()
|
||||
Return New ASPxHtmlEditorRoundPanel() { }
|
||||
End Function
|
||||
|
||||
Protected Sub PrepareFileManager()
|
||||
FileManager.Styles.CopyFrom(HtmlEditor.StylesFileManager)
|
||||
FileManager.ControlStyle.CopyFrom(HtmlEditor.StylesFileManager.Control)
|
||||
FileManager.Images.CopyFrom(HtmlEditor.ImagesFileManager)
|
||||
FileManager.Settings.Assign(HtmlEditor.SettingsDocumentSelector.CommonSettings)
|
||||
FileManager.SettingsEditing.Assign(HtmlEditor.SettingsDocumentSelector.EditingSettings)
|
||||
FileManager.SettingsFolders.Assign(HtmlEditor.SettingsDocumentSelector.FoldersSettings)
|
||||
FileManager.SettingsToolbar.Assign(HtmlEditor.SettingsDocumentSelector.ToolbarSettings)
|
||||
FileManager.SettingsUpload.Assign(HtmlEditor.SettingsDocumentSelector.UploadSettings)
|
||||
FileManager.SettingsPermissions.Assign(HtmlEditor.SettingsDocumentSelector.PermissionSettings)
|
||||
|
||||
AddHandler FileManager.FolderCreating, AddressOf FileManager_FolderCreating
|
||||
AddHandler FileManager.ItemDeleting, AddressOf FileManager_ItemDeleting
|
||||
AddHandler FileManager.ItemMoving, AddressOf FileManager_ItemMoving
|
||||
AddHandler FileManager.ItemRenaming, AddressOf FileManager_ItemRenaming
|
||||
AddHandler FileManager.FileUploading, AddressOf FileManager_FileUploading
|
||||
End Sub
|
||||
Protected Sub FileManager_FolderCreating(ByVal sender As Object, ByVal e As FileManagerFolderCreateEventArgs)
|
||||
HtmlEditor.RaiseDocumentSelectorFolderCreating(e)
|
||||
End Sub
|
||||
Protected Sub FileManager_ItemDeleting(ByVal sender As Object, ByVal e As FileManagerItemDeleteEventArgs)
|
||||
HtmlEditor.RaiseDocumentSelectorItemDeleting(e)
|
||||
End Sub
|
||||
Protected Sub FileManager_ItemMoving(ByVal sender As Object, ByVal e As FileManagerItemMoveEventArgs)
|
||||
HtmlEditor.RaiseDocumentSelectorItemMoving(e)
|
||||
End Sub
|
||||
Protected Sub FileManager_ItemRenaming(ByVal sender As Object, ByVal e As FileManagerItemRenameEventArgs)
|
||||
HtmlEditor.RaiseDocumentSelectorItemRenaming(e)
|
||||
End Sub
|
||||
Protected Sub FileManager_FileUploading(ByVal sender As Object, ByVal e As FileManagerFileUploadEventArgs)
|
||||
HtmlEditor.RaiseDocumentSelectorFileUploading(e)
|
||||
End Sub
|
||||
Protected Sub FileManager_CustomJSProperties(ByVal sender As Object, ByVal e As DevExpress.Web.CustomJSPropertiesEventArgs)
|
||||
e.Properties("cp_RootFolderRelativePath") = FileManager.GetAppRelativeRootFolder()
|
||||
End Sub
|
||||
End Class
|
||||
@@ -0,0 +1,66 @@
|
||||
<%@ Control Language="vb" AutoEventWireup="true" Inherits="SelectImageForm" Codebehind="SelectImageForm.ascx.vb" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web" TagPrefix="dx" %>
|
||||
|
||||
|
||||
|
||||
<%@ Register Assembly="DevExpress.Web.ASPxHtmlEditor.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxHtmlEditor" TagPrefix="dx" %>
|
||||
<script type="text/javascript" id="dxss_SelectImageForm">
|
||||
function aspxHESelectImageForm_OnSelectedFileChanged(s, e) {
|
||||
dxheSelectImageForm_SelectButton.SetEnabled(!!e.file);
|
||||
}
|
||||
function aspxHEClosePopup() {
|
||||
BrowsePopup.Hide();
|
||||
}
|
||||
function aspxHESelectImageForm_ImageSelected() {
|
||||
aspxHEClosePopup();
|
||||
var imageUrl = FileManager.cp_RootFolderRelativePath + FileManager.GetSelectedFile().GetFullName("\/", true);
|
||||
_dxeTbxInsertImageUrl.SetText(imageUrl);
|
||||
aspxInsertImageSrcValueChanged(imageUrl);
|
||||
_dxeTbxInsertImageUrl.Validate();
|
||||
}
|
||||
function aspxHESelectImageForm_Canceled() {
|
||||
aspxHEClosePopup();
|
||||
}
|
||||
</script>
|
||||
<dx:ASPxPanel ID="MainPanel" runat="server" Width="100%" DefaultButton="SelectButton">
|
||||
<PanelCollection>
|
||||
<dx:PanelContent ID="PanelContent1" runat="server">
|
||||
<table cellpadding="0" cellspacing="0" id="dxSelectImageForm">
|
||||
<tr>
|
||||
<td>
|
||||
<dx:HtmlEditorFileManager ID="FileManager" runat="server" Height="500px" Width="800px" ClientInstanceName="FileManager" OnCustomJSProperties="FileManager_CustomJSProperties" Border-BorderStyle="None">
|
||||
<ClientSideEvents SelectedFileChanged="aspxHESelectImageForm_OnSelectedFileChanged" SelectedFileOpened="aspxHESelectImageForm_ImageSelected" />
|
||||
<Styles>
|
||||
<FolderContainer Width="250px">
|
||||
</FolderContainer>
|
||||
<File>
|
||||
<Margins Margin="1px"></Margins>
|
||||
</File>
|
||||
</Styles>
|
||||
</dx:HtmlEditorFileManager>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="buttonsCell">
|
||||
<table cellpadding="0" cellspacing="0" style="display:inline-block;">
|
||||
<tr>
|
||||
<td>
|
||||
<dx:ASPxButton ID="SelectButton" runat="server" AutoPostBack="False" Height="23px"
|
||||
Width="74px" CausesValidation="False" ClientEnabled="false" ClientInstanceName="dxheSelectImageForm_SelectButton">
|
||||
<ClientSideEvents Click="aspxHESelectImageForm_ImageSelected" />
|
||||
</dx:ASPxButton>
|
||||
</td>
|
||||
<td class="cancelButton">
|
||||
<dx:ASPxButton ID="CancelButton" runat="server" AutoPostBack="False" Height="23px"
|
||||
Width="74px" CausesValidation="False">
|
||||
<ClientSideEvents Click="aspxHESelectImageForm_Canceled" />
|
||||
</dx:ASPxButton>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</dx:PanelContent>
|
||||
</PanelCollection>
|
||||
</dx:ASPxPanel>
|
||||
@@ -0,0 +1,60 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class SelectImageForm
|
||||
|
||||
'''<summary>
|
||||
'''MainPanel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents MainPanel As Global.DevExpress.Web.ASPxPanel
|
||||
|
||||
'''<summary>
|
||||
'''PanelContent1 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents PanelContent1 As Global.DevExpress.Web.PanelContent
|
||||
|
||||
'''<summary>
|
||||
'''FileManager control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents FileManager As Global.DevExpress.Web.ASPxHtmlEditor.HtmlEditorFileManager
|
||||
|
||||
'''<summary>
|
||||
'''SelectButton control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents SelectButton As Global.DevExpress.Web.ASPxButton
|
||||
|
||||
'''<summary>
|
||||
'''CancelButton control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents CancelButton As Global.DevExpress.Web.ASPxButton
|
||||
End Class
|
||||
@@ -0,0 +1,74 @@
|
||||
Imports System
|
||||
Imports System.Collections.Generic
|
||||
Imports System.Web
|
||||
Imports System.Web.UI
|
||||
Imports System.Web.UI.WebControls
|
||||
Imports DevExpress.Web.ASPxHtmlEditor
|
||||
Imports DevExpress.Web
|
||||
Imports DevExpress.Web.ASPxHtmlEditor.Localization
|
||||
Imports DevExpress.Web.Internal
|
||||
|
||||
Partial Public Class SelectImageForm
|
||||
Inherits HtmlEditorUserControl
|
||||
Protected Overrides Sub PrepareChildControls()
|
||||
Localize()
|
||||
|
||||
MyBase.PrepareChildControls()
|
||||
|
||||
PrepareFileManager()
|
||||
End Sub
|
||||
Private Sub Localize()
|
||||
SelectButton.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ButtonSelect)
|
||||
CancelButton.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ButtonCancel)
|
||||
End Sub
|
||||
Protected Overrides Function GetChildDxEdits() As ASPxEditBase()
|
||||
Return New ASPxEditBase() { }
|
||||
End Function
|
||||
Protected Overrides Function GetChildDxButtons() As ASPxButton()
|
||||
Return New ASPxButton() { SelectButton, CancelButton }
|
||||
End Function
|
||||
Protected Overrides Function GetChildDxHtmlEditorRoundPanels() As ASPxHtmlEditorRoundPanel()
|
||||
Return New ASPxHtmlEditorRoundPanel() { }
|
||||
End Function
|
||||
|
||||
Protected Sub PrepareFileManager()
|
||||
FileManager.Styles.CopyFrom(HtmlEditor.StylesFileManager)
|
||||
FileManager.ControlStyle.CopyFrom(HtmlEditor.StylesFileManager.Control)
|
||||
FileManager.Images.CopyFrom(HtmlEditor.ImagesFileManager)
|
||||
FileManager.Settings.Assign(HtmlEditor.SettingsImageSelector.CommonSettings)
|
||||
FileManager.SettingsEditing.Assign(HtmlEditor.SettingsImageSelector.EditingSettings)
|
||||
FileManager.SettingsFolders.Assign(HtmlEditor.SettingsImageSelector.FoldersSettings)
|
||||
FileManager.SettingsToolbar.Assign(HtmlEditor.SettingsImageSelector.ToolbarSettings)
|
||||
FileManager.SettingsUpload.Assign(HtmlEditor.SettingsImageSelector.UploadSettings)
|
||||
FileManager.SettingsUpload.ValidationSettings.Assign(HtmlEditor.SettingsImageUpload.ValidationSettings)
|
||||
FileManager.SettingsPermissions.Assign(HtmlEditor.SettingsImageSelector.PermissionSettings)
|
||||
|
||||
If String.IsNullOrEmpty(FileManager.Settings.RootFolder) Then
|
||||
FileManager.Settings.RootFolder = HtmlEditor.SettingsImageUpload.UploadImageFolder
|
||||
End If
|
||||
|
||||
AddHandler FileManager.FolderCreating, AddressOf FileManager_FolderCreating
|
||||
AddHandler FileManager.ItemDeleting, AddressOf FileManager_ItemDeleting
|
||||
AddHandler FileManager.ItemMoving, AddressOf FileManager_ItemMoving
|
||||
AddHandler FileManager.ItemRenaming, AddressOf FileManager_ItemRenaming
|
||||
AddHandler FileManager.FileUploading, AddressOf FileManager_FileUploading
|
||||
End Sub
|
||||
Protected Sub FileManager_FolderCreating(ByVal sender As Object, ByVal e As FileManagerFolderCreateEventArgs)
|
||||
HtmlEditor.RaiseImageSelectorFolderCreating(e)
|
||||
End Sub
|
||||
Protected Sub FileManager_ItemDeleting(ByVal sender As Object, ByVal e As FileManagerItemDeleteEventArgs)
|
||||
HtmlEditor.RaiseImageSelectorItemDeleting(e)
|
||||
End Sub
|
||||
Protected Sub FileManager_ItemMoving(ByVal sender As Object, ByVal e As FileManagerItemMoveEventArgs)
|
||||
HtmlEditor.RaiseImageSelectorItemMoving(e)
|
||||
End Sub
|
||||
Protected Sub FileManager_ItemRenaming(ByVal sender As Object, ByVal e As FileManagerItemRenameEventArgs)
|
||||
HtmlEditor.RaiseImageSelectorItemRenaming(e)
|
||||
End Sub
|
||||
Protected Sub FileManager_FileUploading(ByVal sender As Object, ByVal e As FileManagerFileUploadEventArgs)
|
||||
HtmlEditor.RaiseImageSelectorFileUploading(e)
|
||||
End Sub
|
||||
Protected Sub FileManager_CustomJSProperties(ByVal sender As Object, ByVal e As DevExpress.Web.CustomJSPropertiesEventArgs)
|
||||
e.Properties("cp_RootFolderRelativePath") = FileManager.GetAppRelativeRootFolder()
|
||||
End Sub
|
||||
End Class
|
||||
@@ -0,0 +1,289 @@
|
||||
<%@ Control Language="vb" AutoEventWireup="true" Inherits="TableColumnPropertiesForm" Codebehind="TableColumnPropertiesForm.ascx.vb" %>
|
||||
<%@ Assembly name="DevExpress.Data.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" %>
|
||||
<%@ Register Assembly="DevExpress.Web.ASPxHtmlEditor.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxHtmlEditor"
|
||||
TagPrefix="dxhe" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web"
|
||||
TagPrefix="dxe" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web"
|
||||
TagPrefix="dxp" %>
|
||||
|
||||
<%@ Register Assembly="DevExpress.Web.ASPxHtmlEditor.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxHtmlEditor" TagPrefix="dxhe" %>
|
||||
|
||||
|
||||
<dxp:ASPxPanel ID="MainPanel" runat="server" Width="100%" DefaultButton="btnChange">
|
||||
<panelcollection>
|
||||
<dxp:PanelContent ID="PanelContent1" runat="server">
|
||||
<table cellpadding="0" cellspacing="0" id="dxTableColumnPropertiesForm">
|
||||
<tr>
|
||||
<td class="contentCell">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td>
|
||||
<dxhe:ASPxHtmlEditorRoundPanel ID="rpSize" runat="server" Width="350px" ClientInstanceName="_dxeRPTableColumnSize">
|
||||
<ContentPaddings PaddingTop="4px" />
|
||||
<PanelCollection>
|
||||
<dxhe:HtmlEditorRoundPanelContent ID="HtmlEditorRoundPanelContent1" runat="server">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="propGroupCell">
|
||||
<dxe:ASPxLabel ID="lblSize" runat="server">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="propGroupContentCell">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr id='<% =HtmlEditor.ClientID + "_dxeColumnWidthCell"%>'>
|
||||
<td class="captionCell">
|
||||
<dxe:ASPxLabel ID="lblWidth" runat="server" AssociatedControlID="cmbWidth">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="inputCell">
|
||||
<dxe:ASPxComboBox ID="cmbWidth" ClientInstanceName="_dxeCmbTableColumnWidth" runat="server" ValueType="System.String" SelectedIndex="0"
|
||||
Width="137px">
|
||||
<ClientSideEvents SelectedIndexChanged="function(s, e) { OnCmdWidthSelectedIndexChanged_TableColumnForm(s); }" />
|
||||
<Items>
|
||||
<dxe:ListEditItem Value="100%" />
|
||||
<dxe:ListEditItem Value="" />
|
||||
<dxe:ListEditItem Value="custom" />
|
||||
</Items>
|
||||
</dxe:ASPxComboBox>
|
||||
</td>
|
||||
<td class="rowsInputCell" style="visibility: hidden;" id='<% =HtmlEditor.ClientID + "_dxeColumnWidthSpinEditCell"%>' colspan="2">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxSpinEdit ID="txbWidth" ClientInstanceName="_dxeTxbTableColumnWidth" runat="server" Height="21px"
|
||||
Number="0" Width="52px" AllowNull="False" NumberType="Float" MaxValue="10000"
|
||||
MinValue="0">
|
||||
</dxe:ASPxSpinEdit>
|
||||
</td>
|
||||
<td class="rowsInputCell">
|
||||
<dxe:ASPxComboBox ID="cmbWidthType" ClientInstanceName="_dxeCmbTableColumnWidthType" runat="server"
|
||||
ValueType="System.String" SelectedIndex="0" Width="45px">
|
||||
<Items>
|
||||
<dxe:ListEditItem Value="px" />
|
||||
<dxe:ListEditItem Value="%" />
|
||||
</Items>
|
||||
</dxe:ASPxComboBox>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr id='<% =HtmlEditor.ClientID + "_dxeColumnHeightCell"%>'>
|
||||
<td class="captionCell">
|
||||
<dxe:ASPxLabel ID="lblHeight" runat="server" AssociatedControlID="cmbHeight">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="inputCell">
|
||||
<dxe:ASPxComboBox ID="cmbHeight" ClientInstanceName="_dxeCmbTableRowHeight" runat="server"
|
||||
ValueType="System.String" SelectedIndex="0" Width="137px">
|
||||
<ClientSideEvents SelectedIndexChanged="function(s, e) { OnCmdHeightSelectedIndexChanged_TableColumnForm(s); }" />
|
||||
<Items>
|
||||
<dxe:ListEditItem Value="" />
|
||||
<dxe:ListEditItem Value="custom" />
|
||||
</Items>
|
||||
</dxe:ASPxComboBox>
|
||||
</td>
|
||||
<td class="rowsInputCell" style="visibility: hidden;" id='<% =HtmlEditor.ClientID + "_dxeRowHeightSpinEditCell"%>' colspan="2">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxSpinEdit ID="txbHeight" ClientInstanceName="_dxeTxbTableRowHeight" runat="server" Height="21px"
|
||||
Number="0" Width="52px" AllowNull="False" NumberType="Float" MaxValue="10000"
|
||||
MinValue="0">
|
||||
</dxe:ASPxSpinEdit>
|
||||
</td>
|
||||
<td class="rowsInputCell">
|
||||
<dxe:ASPxComboBox ID="cmbHeightType" ClientInstanceName="_dxeCmbTableRowHeightType" runat="server"
|
||||
ValueType="System.String" SelectedIndex="0" Width="45px">
|
||||
<Items>
|
||||
<dxe:ListEditItem Value="px" />
|
||||
<dxe:ListEditItem Value="%" />
|
||||
</Items>
|
||||
</dxe:ASPxComboBox>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</dxhe:HtmlEditorRoundPanelContent>
|
||||
</PanelCollection>
|
||||
</dxhe:ASPxHtmlEditorRoundPanel>
|
||||
<div class="propGroupSeparator">
|
||||
</div>
|
||||
<!-- LAYOUT -->
|
||||
<dxhe:ASPxHtmlEditorRoundPanel ID="rpLayout" runat="server" Width="350px" ClientInstanceName="_dxeRPTableLayout">
|
||||
<ContentPaddings PaddingTop="4px" />
|
||||
<PanelCollection>
|
||||
<dxhe:HtmlEditorRoundPanelContent ID="HtmlEditorRoundPanelContent4" runat="server">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="propGroupCell">
|
||||
<dxe:ASPxLabel ID="lblAlign" runat="server">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="propGroupContentCell">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="captionCell">
|
||||
<dxe:ASPxLabel ID="lblHorizontalAlign" runat="server" AssociatedControlID="cmbAlign">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="inputCell">
|
||||
<dxe:ASPxComboBox ID="cmbAlign" runat="server" ValueType="System.String" ClientInstanceName="_dxeCmbTableColumnAlign"
|
||||
SelectedIndex="0" Width="70px">
|
||||
<Items>
|
||||
<dxe:ListEditItem Value="" />
|
||||
<dxe:ListEditItem Value="left" />
|
||||
<dxe:ListEditItem Value="center" />
|
||||
<dxe:ListEditItem Value="right" />
|
||||
</Items>
|
||||
</dxe:ASPxComboBox>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" class="separatorCell">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="captionCell">
|
||||
<dxe:ASPxLabel ID="lblVerticalAlign" runat="server" AssociatedControlID="cmbVAlign">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="inputCell">
|
||||
<dxe:ASPxComboBox ID="cmbVAlign" runat="server" ValueType="System.String" ClientInstanceName="_dxeCmbTableColumnVAlign"
|
||||
SelectedIndex="0" Width="70px">
|
||||
<Items>
|
||||
<dxe:ListEditItem Value=""/>
|
||||
<dxe:ListEditItem Value="top"/>
|
||||
<dxe:ListEditItem Value="middle"/>
|
||||
<dxe:ListEditItem Value="bottom"/>
|
||||
</Items>
|
||||
</dxe:ASPxComboBox>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</dxhe:HtmlEditorRoundPanelContent>
|
||||
</PanelCollection>
|
||||
</dxhe:ASPxHtmlEditorRoundPanel>
|
||||
<div class="propGroupSeparator">
|
||||
</div>
|
||||
<!-- APPEARANCE -->
|
||||
<dxhe:ASPxHtmlEditorRoundPanel ID="rpAppearance" runat="server" Width="350px">
|
||||
<ContentPaddings PaddingTop="4px" />
|
||||
<PanelCollection>
|
||||
<dxhe:HtmlEditorRoundPanelContent ID="HtmlEditorRoundPanelContent3" runat="server">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="propGroupCell">
|
||||
<dxe:ASPxLabel ID="lblAppearance" runat="server">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="propGroupContentCell">
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="captionCell">
|
||||
<dxe:ASPxLabel ID="lblBackgroundColor" runat="server" AssociatedControlID="txbBackgroundColor">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="inputCell" colspan="3">
|
||||
<dxe:ASPxColorEdit ID="txbBackgroundColor" runat="server"
|
||||
ClientInstanceName="_dxeTxbTableColumnBackgroundColor" Width="137px">
|
||||
</dxe:ASPxColorEdit>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</dxhe:HtmlEditorRoundPanelContent>
|
||||
</PanelCollection>
|
||||
</dxhe:ASPxHtmlEditorRoundPanel>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<div class="propGroupSeparator"></div>
|
||||
<dxe:ASPxCheckBox ID="ckbApplyForAllElements" runat="server" ClientInstanceName="_dxeCkbApplyForAllElements">
|
||||
</dxe:ASPxCheckBox>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="buttonsCell">
|
||||
<table cellpadding="0" cellspacing="0" style="display:inline-block;">
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxButton ID="btnChange" runat="server" AutoPostBack="False" Height="23px"
|
||||
Width="74px" CausesValidation="False">
|
||||
<ClientSideEvents Click="function(s, e) { OnOkButtonClick_TableColumnForm(); }" />
|
||||
</dxe:ASPxButton>
|
||||
</td>
|
||||
<td class="cancelButton">
|
||||
<dxe:ASPxButton ID="btnCancel" runat="server" AutoPostBack="False" Height="23px"
|
||||
Width="74px" CausesValidation="False">
|
||||
<ClientSideEvents Click="function(s, e) {OnCancelButtonClick_TableColumnForm();}" />
|
||||
</dxe:ASPxButton>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</dxp:PanelContent>
|
||||
</panelcollection>
|
||||
</dxp:ASPxPanel>
|
||||
|
||||
<script type="text/javascript" id="dxss_TableColumnForm">
|
||||
function OnOkButtonClick_TableColumnForm() {
|
||||
aspxDialogComplete(1, GetDialogData_TableColumnForm());
|
||||
}
|
||||
function OnCancelButtonClick_TableColumnForm() {
|
||||
aspxDialogComplete(0, null);
|
||||
}
|
||||
function GetDialogData_TableColumnForm() {
|
||||
var res = new Object();
|
||||
|
||||
// common
|
||||
res.width = GetWidth_TableColumnForm();
|
||||
res.height = GetHeight_TableColumnForm();
|
||||
|
||||
res.backgroundColor = _dxeTxbTableColumnBackgroundColor.GetValue();
|
||||
res.align = _dxeCmbTableColumnAlign.GetValue();
|
||||
res.vAlign = _dxeCmbTableColumnVAlign.GetValue();
|
||||
res.applyForAll = _dxeCkbApplyForAllElements.GetChecked();
|
||||
|
||||
return res;
|
||||
}
|
||||
function GetWidth_TableColumnForm() {
|
||||
var width = _dxeCmbTableColumnWidth.GetValue();
|
||||
if (width == "custom")
|
||||
width = _dxeTxbTableColumnWidth.GetValue() + _dxeCmbTableColumnWidthType.GetValue();
|
||||
return width;
|
||||
}
|
||||
function GetHeight_TableColumnForm() {
|
||||
var height = _dxeCmbTableRowHeight.GetValue();
|
||||
if (height == "custom")
|
||||
height = _dxeTxbTableRowHeight.GetValue() + _dxeCmbTableRowHeightType.GetValue();
|
||||
return height;
|
||||
}
|
||||
|
||||
function OnCmdWidthSelectedIndexChanged_TableColumnForm(widthCombox) {
|
||||
_aspxSetElementVisibility(_aspxGetElementById('<% =HtmlEditor.ClientID + "_dxeColumnWidthSpinEditCell"%>'), widthCombox.GetValue() == "custom");
|
||||
}
|
||||
function OnCmdHeightSelectedIndexChanged_TableColumnForm(heightCombox) {
|
||||
_aspxSetElementVisibility(_aspxGetElementById('<% =HtmlEditor.ClientID + "_dxeRowHeightSpinEditCell"%>'), heightCombox.GetValue() == "custom");
|
||||
}
|
||||
</script>
|
||||
@@ -0,0 +1,267 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class TableColumnPropertiesForm
|
||||
|
||||
'''<summary>
|
||||
'''MainPanel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents MainPanel As Global.DevExpress.Web.ASPxPanel
|
||||
|
||||
'''<summary>
|
||||
'''PanelContent1 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents PanelContent1 As Global.DevExpress.Web.PanelContent
|
||||
|
||||
'''<summary>
|
||||
'''rpSize control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents rpSize As Global.DevExpress.Web.ASPxHtmlEditor.ASPxHtmlEditorRoundPanel
|
||||
|
||||
'''<summary>
|
||||
'''HtmlEditorRoundPanelContent1 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents HtmlEditorRoundPanelContent1 As Global.DevExpress.Web.ASPxHtmlEditor.HtmlEditorRoundPanelContent
|
||||
|
||||
'''<summary>
|
||||
'''lblSize control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblSize As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''lblWidth control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblWidth As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''cmbWidth control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents cmbWidth As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''txbWidth control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents txbWidth As Global.DevExpress.Web.ASPxSpinEdit
|
||||
|
||||
'''<summary>
|
||||
'''cmbWidthType control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents cmbWidthType As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''lblHeight control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblHeight As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''cmbHeight control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents cmbHeight As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''txbHeight control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents txbHeight As Global.DevExpress.Web.ASPxSpinEdit
|
||||
|
||||
'''<summary>
|
||||
'''cmbHeightType control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents cmbHeightType As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''rpLayout control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents rpLayout As Global.DevExpress.Web.ASPxHtmlEditor.ASPxHtmlEditorRoundPanel
|
||||
|
||||
'''<summary>
|
||||
'''HtmlEditorRoundPanelContent4 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents HtmlEditorRoundPanelContent4 As Global.DevExpress.Web.ASPxHtmlEditor.HtmlEditorRoundPanelContent
|
||||
|
||||
'''<summary>
|
||||
'''lblAlign control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblAlign As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''lblHorizontalAlign control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblHorizontalAlign As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''cmbAlign control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents cmbAlign As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''lblVerticalAlign control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblVerticalAlign As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''cmbVAlign control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents cmbVAlign As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''rpAppearance control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents rpAppearance As Global.DevExpress.Web.ASPxHtmlEditor.ASPxHtmlEditorRoundPanel
|
||||
|
||||
'''<summary>
|
||||
'''HtmlEditorRoundPanelContent3 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents HtmlEditorRoundPanelContent3 As Global.DevExpress.Web.ASPxHtmlEditor.HtmlEditorRoundPanelContent
|
||||
|
||||
'''<summary>
|
||||
'''lblAppearance control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblAppearance As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''lblBackgroundColor control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblBackgroundColor As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''txbBackgroundColor control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents txbBackgroundColor As Global.DevExpress.Web.ASPxColorEdit
|
||||
|
||||
'''<summary>
|
||||
'''ckbApplyForAllElements control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ckbApplyForAllElements As Global.DevExpress.Web.ASPxCheckBox
|
||||
|
||||
'''<summary>
|
||||
'''btnChange control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnChange As Global.DevExpress.Web.ASPxButton
|
||||
|
||||
'''<summary>
|
||||
'''btnCancel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnCancel As Global.DevExpress.Web.ASPxButton
|
||||
End Class
|
||||
@@ -0,0 +1,59 @@
|
||||
Imports System
|
||||
Imports System.Collections.Generic
|
||||
Imports System.Web
|
||||
Imports System.Web.UI
|
||||
Imports System.Web.UI.WebControls
|
||||
Imports DevExpress.Web.ASPxHtmlEditor
|
||||
Imports DevExpress.Web
|
||||
Imports DevExpress.Web.ASPxHtmlEditor.Localization
|
||||
|
||||
Partial Public Class TableColumnPropertiesForm
|
||||
Inherits HtmlEditorUserControl
|
||||
Protected Overrides Sub PrepareChildControls()
|
||||
Localize()
|
||||
|
||||
MyBase.PrepareChildControls()
|
||||
End Sub
|
||||
Private Sub Localize()
|
||||
btnChange.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ButtonOk)
|
||||
btnCancel.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ButtonCancel)
|
||||
|
||||
lblSize.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.ChangeTableColumn_Size) & ":"
|
||||
lblWidth.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Width) & ":"
|
||||
lblHeight.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Height) & ":"
|
||||
cmbWidth.Items(0).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_FullWidth)
|
||||
cmbWidth.Items(1).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_AutoFitToContent)
|
||||
cmbWidth.Items(2).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Custom)
|
||||
|
||||
cmbHeight.Items(0).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_AutoFitToContent)
|
||||
cmbHeight.Items(1).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Custom)
|
||||
|
||||
lblAlign.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Alignment) & ":"
|
||||
lblHorizontalAlign.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_HorzAlignment) & ":"
|
||||
lblVerticalAlign.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_VertAlignment) & ":"
|
||||
cmbAlign.Items(0).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_None)
|
||||
cmbAlign.Items(1).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Alignment_Left)
|
||||
cmbAlign.Items(2).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Alignment_Center)
|
||||
cmbAlign.Items(3).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Alignment_Right)
|
||||
|
||||
cmbVAlign.Items(0).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_None)
|
||||
cmbVAlign.Items(1).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_VAlignment_Top)
|
||||
cmbVAlign.Items(2).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_VAlignment_Middle)
|
||||
cmbVAlign.Items(3).Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_VAlignment_Bottom)
|
||||
|
||||
lblAppearance.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_Appearance) & ":"
|
||||
lblBackgroundColor.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_BgColor) & ":"
|
||||
|
||||
ckbApplyForAllElements.Text = ASPxHtmlEditorLocalizer.GetString(ASPxHtmlEditorStringId.InsertTable_ApplyToAllCell)
|
||||
' Text="Apply to all cells in the table"
|
||||
End Sub
|
||||
Protected Overrides Function GetChildDxEdits() As ASPxEditBase()
|
||||
Return New ASPxEditBase() { lblAlign, lblHorizontalAlign, lblSize, lblWidth, cmbWidth, txbWidth, lblHeight, cmbHeight, txbHeight, cmbAlign, lblAppearance, txbBackgroundColor, lblVerticalAlign, cmbVAlign, ckbApplyForAllElements, cmbWidthType, cmbHeightType }
|
||||
End Function
|
||||
Protected Overrides Function GetChildDxButtons() As ASPxButton()
|
||||
Return New ASPxButton() { btnCancel, btnChange }
|
||||
End Function
|
||||
Protected Overrides Function GetChildDxHtmlEditorRoundPanels() As ASPxHtmlEditorRoundPanel()
|
||||
Return New ASPxHtmlEditorRoundPanel() { rpSize, rpLayout, rpAppearance }
|
||||
End Function
|
||||
End Class
|
||||
@@ -0,0 +1,28 @@
|
||||
<%@ Control Language="vb" AutoEventWireup="true" Inherits="UserForms_AppointmentDragToolTip" Codebehind="AppointmentDragToolTip.ascx.vb" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2" Namespace="DevExpress.Web"
|
||||
TagPrefix="dxe" %>
|
||||
|
||||
<div style="white-space:nowrap;">
|
||||
<dxe:ASPxLabel ID="lblInterval" runat="server" Text="CustomDragAppointmentTooltip" EnableClientSideAPI="true">
|
||||
</dxe:ASPxLabel>
|
||||
<br />
|
||||
<dxe:ASPxLabel ID="lblInfo" runat="server" Text="Press ESC to cancel operation" EnableClientSideAPI="true"></dxe:ASPxLabel>
|
||||
</div>
|
||||
|
||||
<script id="dxss_ASPxClientAppointmentDragTooltip" type="text/javascript"><!--
|
||||
ASPxClientAppointmentDragTooltip = _aspxCreateClass(ASPxClientToolTipBase, {
|
||||
CalculatePosition: function(bounds) {
|
||||
return new ASPxClientPoint(bounds.GetLeft(), bounds.GetTop() - bounds.GetHeight());
|
||||
},
|
||||
Update: function (toolTipData) {
|
||||
var stringInterval = this.GetToolTipContent(toolTipData);
|
||||
var oldText = this.controls.lblInterval.GetText();
|
||||
if (oldText != stringInterval)
|
||||
this.controls.lblInterval.SetText(stringInterval);
|
||||
},
|
||||
GetToolTipContent: function(toolTipData) {
|
||||
var interval = toolTipData.GetInterval();
|
||||
return this.ConvertIntervalToString(interval);
|
||||
}
|
||||
});
|
||||
//--></script>
|
||||
@@ -0,0 +1,33 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class UserForms_AppointmentDragToolTip
|
||||
|
||||
'''<summary>
|
||||
'''lblInterval control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblInterval As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''lblInfo control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblInfo As Global.DevExpress.Web.ASPxLabel
|
||||
End Class
|
||||
@@ -0,0 +1,34 @@
|
||||
Imports Microsoft.VisualBasic
|
||||
Imports System
|
||||
Imports System.Data
|
||||
Imports System.Configuration
|
||||
Imports System.Collections
|
||||
Imports System.Web
|
||||
Imports System.Web.Security
|
||||
Imports System.Web.UI
|
||||
Imports System.Web.UI.WebControls
|
||||
Imports System.Web.UI.WebControls.WebParts
|
||||
Imports System.Web.UI.HtmlControls
|
||||
Imports DevExpress.Web.ASPxScheduler
|
||||
|
||||
Partial Public Class UserForms_AppointmentDragToolTip
|
||||
Inherits ASPxSchedulerToolTipBase
|
||||
Public Overrides ReadOnly Property ClassName() As String
|
||||
Get
|
||||
Return "ASPxClientAppointmentDragTooltip"
|
||||
End Get
|
||||
End Property
|
||||
Public Overrides ReadOnly Property ToolTipShowStem() As Boolean
|
||||
Get
|
||||
Return True
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
|
||||
DevExpress.Web.ASPxWebControl.RegisterBaseScript(Page)
|
||||
End Sub
|
||||
Protected Overrides Function GetChildControls() As Control()
|
||||
Dim controls() As Control = { lblInterval }
|
||||
Return controls
|
||||
End Function
|
||||
End Class
|
||||
@@ -0,0 +1,332 @@
|
||||
<%--
|
||||
{************************************************************************************}
|
||||
{ }
|
||||
{ DO NOT MODIFY THIS FILE! }
|
||||
{ }
|
||||
{ It will be overwritten without prompting when a new version becomes }
|
||||
{ available. All your changes will be lost. }
|
||||
{ }
|
||||
{ This file contains the default template and is required for the form }
|
||||
{ rendering. Improper modifications may result in incorrect behavior of }
|
||||
{ the appointment form. }
|
||||
{ }
|
||||
{ In order to create and use your own custom template, perform the following }
|
||||
{ steps: }
|
||||
{ 1. Save a copy of this file with a different name in another location. }
|
||||
{ 2. Specify the file location as the 'OptionsForms.AppointmentFormTemplateUrl'}
|
||||
{ property of the ASPxScheduler control. }
|
||||
{ 3. If you need custom fields to be displayed and processed, you should }
|
||||
{ accomplish steps 4-9; otherwise, go to step 10. }
|
||||
{ 4. Create a class, derived from the AppointmentFormTemplateContainer, }
|
||||
{ containing custom properties. This class definition can be located }
|
||||
{ within a class file in the App_Code folder. }
|
||||
{ 5. Replace AppointmentFormTemplateContainer references in the template }
|
||||
{ page with the name of the class you've created in step 4. }
|
||||
{ 6. Handle the AppointmentFormShowing event to create an instance of the }
|
||||
{ template container class, defined in step 4, and specify it as the }
|
||||
{ destination container instead of the default one. }
|
||||
{ 7. Define a class, which inherits from the }
|
||||
{ DevExpress.Web.ASPxScheduler.Internal.AppointmentFormController. }
|
||||
{ This class provides data exchange between the form and the appointment. }
|
||||
{ You should override ApplyCustomFieldsValues() method of the base class. }
|
||||
{ 8. Define a class, which inherits from the }
|
||||
{ DevExpress.Web.ASPxScheduler.Internal.AppointmentFormSaveCallbackCommand. }
|
||||
{ This class creates an instance of the AppointmentFormController inheritor }
|
||||
{ (defined in step 7) via the CreateAppointmentFormController method and }
|
||||
{ overrides the AssignControllerValues method of the base class to collect }
|
||||
{ user data from the form's editors. }
|
||||
{ 9. Handle the BeforeExecuteCallbackCommand event. The event handler code }
|
||||
{ should create an instance of the class defined in step 8, and specify it }
|
||||
{ as the destination command instead of the default one. }
|
||||
{ 10. Modify the overall appearance of the page and its layout. }
|
||||
{ }
|
||||
{************************************************************************************}
|
||||
--%>
|
||||
|
||||
<%@ Control Language="vb" AutoEventWireup="true" Inherits="AppointmentForm" Codebehind="AppointmentForm.ascx.vb" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web" TagPrefix="dxe" %>
|
||||
<%@ Register Assembly="DevExpress.Web.ASPxScheduler.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxScheduler.Controls" TagPrefix="dxsc" %>
|
||||
<%@ Register Assembly="DevExpress.Web.ASPxScheduler.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxScheduler" TagPrefix="dxwschs" %>
|
||||
|
||||
<table class="dxscAppointmentForm" cellpadding="0" cellspacing="0" style="width: 100%; height: 230px;">
|
||||
<tr>
|
||||
<td class="dxscDoubleCell" colspan="2">
|
||||
<table class="dxscLabelControlPair" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="dxscLabelCell">
|
||||
<dxe:ASPxLabel ID="lblSubject" runat="server" AssociatedControlID="tbSubject" Text="Subject:">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="dxscControlCell">
|
||||
<dxe:ASPxTextBox ClientInstanceName="_dx" ID="tbSubject" runat="server" Width="100%" Text='<%#(CType(Container, AppointmentFormTemplateContainer)).Appointment.Subject%>' />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="dxscSingleCell">
|
||||
<table class="dxscLabelControlPair" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="dxscLabelCell">
|
||||
<dxe:ASPxLabel ID="lblLocation" runat="server" AssociatedControlID="tbLocation" Text="Location:">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="dxscControlCell">
|
||||
<dxe:ASPxTextBox ClientInstanceName="_dx" ID="tbLocation" runat="server" Width="100%" Text='<%#(CType(Container, AppointmentFormTemplateContainer)).Appointment.Location%>' />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="dxscSingleCell">
|
||||
<table class="dxscLabelControlPair" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="dxscLabelCell" style="padding-left: 25px;">
|
||||
<dxe:ASPxLabel ID="lblLabel" runat="server" AssociatedControlID="edtLabel" Text="Label:">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="dxscControlCell">
|
||||
<dxe:ASPxComboBox ClientInstanceName="_dx" ID="edtLabel" runat="server" Width="100%" DataSource='<%#(CType(Container, AppointmentFormTemplateContainer)).LabelDataSource%>' />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="dxscSingleCell">
|
||||
<table class="dxscLabelControlPair" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="dxscLabelCell">
|
||||
<dxe:ASPxLabel ID="lblStartDate" runat="server" AssociatedControlID="edtStartDate" Text="Start time:" Wrap="false">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="dxscControlCell">
|
||||
<dxe:ASPxDateEdit ID="edtStartDate" runat="server" Width="100%" Date='<%#(CType(Container, AppointmentFormTemplateContainer)).Start%>' EditFormat="DateTime" DateOnError="Undo" AllowNull="false" EnableClientSideAPI="true" >
|
||||
<ValidationSettings ErrorDisplayMode="ImageWithTooltip" EnableCustomValidation="True" Display="Dynamic"
|
||||
ValidationGroup="DateValidatoinGroup">
|
||||
</ValidationSettings>
|
||||
</dxe:ASPxDateEdit>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="dxscSingleCell">
|
||||
<table class="dxscLabelControlPair" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="dxscLabelCell" style="padding-left: 25px;">
|
||||
<dxe:ASPxLabel runat="server" ID="lblEndDate" Text="End time:" Wrap="false" AssociatedControlID="edtEndDate"/>
|
||||
</td>
|
||||
<td class="dxscControlCell">
|
||||
<dxe:ASPxDateEdit id="edtEndDate" runat="server" Date='<%#(CType(Container, AppointmentFormTemplateContainer)).End%>' EditFormat="DateTime" Width="100%" DateOnError="Undo" AllowNull="false" EnableClientSideAPI="true">
|
||||
<ValidationSettings ErrorDisplayMode="ImageWithTooltip" EnableCustomValidation="True" Display="Dynamic"
|
||||
ValidationGroup="DateValidatoinGroup">
|
||||
</ValidationSettings>
|
||||
</dxe:ASPxDateEdit>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="dxscSingleCell">
|
||||
<table class="dxscLabelControlPair" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="dxscLabelCell">
|
||||
<dxe:ASPxLabel ID="lblStatus" runat="server" AssociatedControlID="edtStatus" Text="Show time as:" Wrap="false">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="dxscControlCell">
|
||||
<dxe:ASPxComboBox ClientInstanceName="_dx" ID="edtStatus" runat="server" Width="100%" DataSource='<%#(CType(Container, AppointmentFormTemplateContainer)).StatusDataSource%>' />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="dxscSingleCell" style="padding-left: 22px;">
|
||||
<table class="dxscLabelControlPair" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td style="width: 20px; height: 20px;">
|
||||
<dxe:ASPxCheckBox ClientInstanceName="_dx" ID="chkAllDay" runat="server" Checked='<%#(CType(Container, AppointmentFormTemplateContainer)).Appointment.AllDay%>'>
|
||||
</dxe:ASPxCheckBox>
|
||||
</td>
|
||||
<td style="padding-left: 2px;">
|
||||
<dxe:ASPxLabel ID="lblAllDay" runat="server" Text="All day event" AssociatedControlID="chkAllDay" />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<%
|
||||
If CanShowReminders Then
|
||||
%>
|
||||
<td class="dxscSingleCell">
|
||||
<%
|
||||
Else
|
||||
%>
|
||||
<td class="dxscDoubleCell" colspan="2">
|
||||
<%
|
||||
End If
|
||||
%>
|
||||
<table class="dxscLabelControlPair" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="dxscLabelCell">
|
||||
<dxe:ASPxLabel ID="lblResource" runat="server" AssociatedControlID="edtResource" Text="Resource:">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="dxscControlCell">
|
||||
<%
|
||||
If ResourceSharing Then
|
||||
%>
|
||||
<dxe:ASPxDropDownEdit id="ddResource" runat="server" Width="100%" ClientInstanceName="ddResource" Enabled='<%#(CType(Container, AppointmentFormTemplateContainer)).CanEditResource%>' AllowUserInput="false">
|
||||
<DropDownWindowTemplate>
|
||||
<dxe:ASPxListBox id="edtMultiResource" runat="server" width="100%" SelectionMode="CheckColumn" DataSource='<%#ResourceDataSource%>' Border-BorderWidth="0"/>
|
||||
</DropDownWindowTemplate>
|
||||
</dxe:ASPxDropDownEdit>
|
||||
<%
|
||||
Else
|
||||
%>
|
||||
<dxe:ASPxComboBox ClientInstanceName="_dx" ID="edtResource" runat="server" Width="100%" DataSource='<%#ResourceDataSource%> ' Enabled='<%#(CType(Container, AppointmentFormTemplateContainer)).CanEditResource%>' />
|
||||
<%
|
||||
End If
|
||||
%>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<%
|
||||
If CanShowReminders Then
|
||||
%>
|
||||
<td class="dxscSingleCell">
|
||||
<table class="dxscLabelControlPair" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="dxscLabelCell" style="padding-left: 22px;">
|
||||
<table class="dxscLabelControlPair" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td style="width: 20px; height: 20px;">
|
||||
<dxe:ASPxCheckBox ID="chkReminder" runat="server">
|
||||
</dxe:ASPxCheckBox>
|
||||
</td>
|
||||
<td style="padding-left: 2px;">
|
||||
<dxe:ASPxLabel ID="lblReminder" runat="server" Text="Reminder" AssociatedControlID="chkReminder" />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="dxscControlCell" style="padding-left: 3px">
|
||||
<dxe:ASPxComboBox ID="cbReminder" runat="server" Width="100%" DataSource='<%#(CType(Container, AppointmentFormTemplateContainer)).ReminderDataSource%>' />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<%
|
||||
End If
|
||||
%>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="dxscDoubleCell" colspan="2" style="height: 90px;">
|
||||
<dxe:ASPxMemo ClientInstanceName="_dx" ID="tbDescription" runat="server" Width="100%" Rows="6" Text='<%#(CType(Container, AppointmentFormTemplateContainer)).Appointment.Description%>' />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<dxsc:AppointmentRecurrenceForm ID="AppointmentRecurrenceForm1" runat="server"
|
||||
IsRecurring='<%#(CType(Container, AppointmentFormTemplateContainer)).Appointment.IsRecurring%>'
|
||||
DayNumber='<%#(CType(Container, AppointmentFormTemplateContainer)).RecurrenceDayNumber%>'
|
||||
End='<%#(CType(Container, AppointmentFormTemplateContainer)).RecurrenceEnd%>'
|
||||
Month='<%#(CType(Container, AppointmentFormTemplateContainer)).RecurrenceMonth%>'
|
||||
OccurrenceCount='<%#(CType(Container, AppointmentFormTemplateContainer)).RecurrenceOccurrenceCount%>'
|
||||
Periodicity='<%#(CType(Container, AppointmentFormTemplateContainer)).RecurrencePeriodicity%>'
|
||||
RecurrenceRange='<%#(CType(Container, AppointmentFormTemplateContainer)).RecurrenceRange%>'
|
||||
Start='<%#(CType(Container, AppointmentFormTemplateContainer)).RecurrenceStart%>'
|
||||
WeekDays='<%#(CType(Container, AppointmentFormTemplateContainer)).RecurrenceWeekDays%>'
|
||||
WeekOfMonth='<%#(CType(Container, AppointmentFormTemplateContainer)).RecurrenceWeekOfMonth%>'
|
||||
RecurrenceType='<%#(CType(Container, AppointmentFormTemplateContainer)).RecurrenceType%>'
|
||||
IsFormRecreated='<%#(CType(Container, AppointmentFormTemplateContainer)).IsFormRecreated%>' >
|
||||
</dxsc:AppointmentRecurrenceForm>
|
||||
|
||||
<table cellpadding="0" cellspacing="0" style="width: 100%; height: 35px;">
|
||||
<tr>
|
||||
<td style="width: 100%; height: 100%;" align="center">
|
||||
<table style="height: 100%;">
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxButton runat="server" ID="btnOk" Text="OK" UseSubmitBehavior="false" AutoPostBack="false"
|
||||
EnableViewState="false" Width="91px" EnableClientSideAPI="true"/>
|
||||
</td>
|
||||
<td>
|
||||
<dxe:ASPxButton runat="server" ID="btnCancel" Text="Cancel" UseSubmitBehavior="false" AutoPostBack="false" EnableViewState="false"
|
||||
Width="91px" CausesValidation="False" EnableClientSideAPI="true" />
|
||||
</td>
|
||||
<td>
|
||||
<dxe:ASPxButton runat="server" ID="btnDelete" Text="Delete" UseSubmitBehavior="false"
|
||||
AutoPostBack="false" EnableViewState="false" Width="91px"
|
||||
Enabled='<%#(CType(Container, AppointmentFormTemplateContainer)).CanDeleteAppointment%>'
|
||||
CausesValidation="False" />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<table cellpadding="0" cellspacing="0" style="width: 100%;">
|
||||
<tr>
|
||||
<td style="width: 100%;" align="left">
|
||||
<dxsc:ASPxSchedulerStatusInfo runat="server" ID="schedulerStatusInfo" Priority="1" MasterControlId='<%#(CType(Container, DevExpress.Web.ASPxScheduler.AppointmentFormTemplateContainer)).ControlId%>' />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<script id="dxss_ASPxSchedulerAppoinmentForm" type="text/javascript">
|
||||
ASPxAppointmentForm = _aspxCreateClass(ASPxClientFormBase, {
|
||||
Initialize: function () {
|
||||
this.controls.edtStartDate.Validation.AddHandler(_aspxCreateDelegate(this.OnEdtStartDateValidate, this));
|
||||
this.controls.edtEndDate.Validation.AddHandler(_aspxCreateDelegate(this.OnEdtEndDateValidate, this));
|
||||
this.controls.edtStartDate.ValueChanged.AddHandler(_aspxCreateDelegate(this.OnUpdateStartEndValue, this));
|
||||
this.controls.edtEndDate.ValueChanged.AddHandler(_aspxCreateDelegate(this.OnUpdateStartEndValue, this));
|
||||
if (this.controls.chkReminder)
|
||||
this.controls.chkReminder.CheckedChanged.AddHandler(_aspxCreateDelegate(this.OnChkReminderCheckedChanged, this));
|
||||
if (this.controls.edtMultiResource)
|
||||
this.controls.edtMultiResource.SelectedIndexChanged.AddHandler(_aspxCreateDelegate(this.OnEdtMultiResourceSelectedIndexChanged, this));
|
||||
},
|
||||
OnEdtMultiResourceSelectedIndexChanged: function (s, e) {
|
||||
var resourceNames = new Array();
|
||||
var items = s.GetSelectedItems();
|
||||
var count = items.length;
|
||||
if (count > 0) {
|
||||
for (var i = 0; i < count; i++)
|
||||
resourceNames.push(items[i].text);
|
||||
}
|
||||
else
|
||||
resourceNames.push(ddResource.cp_Caption_ResourceNone);
|
||||
ddResource.SetValue(resourceNames.join(', '));
|
||||
},
|
||||
OnEdtStartDateValidate: function (s, e) {
|
||||
if (!e.isValid)
|
||||
return;
|
||||
var startDate = this.controls.edtStartDate.GetDate();
|
||||
var endDate = this.controls.edtEndDate.GetDate();
|
||||
e.isValid = startDate == null || endDate == null || startDate < endDate;
|
||||
e.errorText = "The Start Date must precede the End Date.";
|
||||
},
|
||||
OnEdtEndDateValidate: function (s, e) {
|
||||
if (!e.isValid)
|
||||
return;
|
||||
var startDate = this.controls.edtStartDate.GetDate();
|
||||
var endDate = this.controls.edtEndDate.GetDate();
|
||||
e.isValid = startDate == null || endDate == null || startDate < endDate;
|
||||
e.errorText = "The Start Date must precede the End Date.";
|
||||
},
|
||||
OnUpdateStartEndValue: function (s, e) {
|
||||
var isValid = ASPxClientEdit.ValidateEditorsInContainer(null);
|
||||
this.controls.btnOk.SetEnabled(isValid);
|
||||
},
|
||||
OnChkReminderCheckedChanged: function (s, e) {
|
||||
var isReminderEnabled = this.controls.chkReminder.GetValue();
|
||||
if (isReminderEnabled)
|
||||
this.controls.cbReminder.SetSelectedIndex(3);
|
||||
else
|
||||
this.controls.cbReminder.SetSelectedIndex(-1);
|
||||
this.controls.cbReminder.SetEnabled(isReminderEnabled);
|
||||
}
|
||||
});
|
||||
</script>
|
||||
@@ -0,0 +1,249 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class AppointmentForm
|
||||
|
||||
'''<summary>
|
||||
'''lblSubject control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblSubject As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''tbSubject control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents tbSubject As Global.DevExpress.Web.ASPxTextBox
|
||||
|
||||
'''<summary>
|
||||
'''lblLocation control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblLocation As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''tbLocation control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents tbLocation As Global.DevExpress.Web.ASPxTextBox
|
||||
|
||||
'''<summary>
|
||||
'''lblLabel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblLabel As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''edtLabel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents edtLabel As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''lblStartDate control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblStartDate As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''edtStartDate control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents edtStartDate As Global.DevExpress.Web.ASPxDateEdit
|
||||
|
||||
'''<summary>
|
||||
'''lblEndDate control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblEndDate As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''edtEndDate control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents edtEndDate As Global.DevExpress.Web.ASPxDateEdit
|
||||
|
||||
'''<summary>
|
||||
'''lblStatus control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblStatus As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''edtStatus control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents edtStatus As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''chkAllDay control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents chkAllDay As Global.DevExpress.Web.ASPxCheckBox
|
||||
|
||||
'''<summary>
|
||||
'''lblAllDay control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblAllDay As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''lblResource control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblResource As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''ddResource control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ddResource As Global.DevExpress.Web.ASPxDropDownEdit
|
||||
|
||||
'''<summary>
|
||||
'''edtResource control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents edtResource As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''chkReminder control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents chkReminder As Global.DevExpress.Web.ASPxCheckBox
|
||||
|
||||
'''<summary>
|
||||
'''lblReminder control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblReminder As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''cbReminder control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents cbReminder As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''tbDescription control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents tbDescription As Global.DevExpress.Web.ASPxMemo
|
||||
|
||||
'''<summary>
|
||||
'''AppointmentRecurrenceForm1 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents AppointmentRecurrenceForm1 As Global.DevExpress.Web.ASPxScheduler.Controls.AppointmentRecurrenceForm
|
||||
|
||||
'''<summary>
|
||||
'''btnOk control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnOk As Global.DevExpress.Web.ASPxButton
|
||||
|
||||
'''<summary>
|
||||
'''btnCancel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnCancel As Global.DevExpress.Web.ASPxButton
|
||||
|
||||
'''<summary>
|
||||
'''btnDelete control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnDelete As Global.DevExpress.Web.ASPxButton
|
||||
|
||||
'''<summary>
|
||||
'''schedulerStatusInfo control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents schedulerStatusInfo As Global.DevExpress.Web.ASPxScheduler.Controls.ASPxSchedulerStatusInfo
|
||||
End Class
|
||||
@@ -0,0 +1,172 @@
|
||||
'
|
||||
'{************************************************************************************}
|
||||
'{ }
|
||||
'{ DO NOT MODIFY THIS FILE! }
|
||||
'{ }
|
||||
'{ It will be overwritten without prompting when a new version becomes }
|
||||
'{ available. All your changes will be lost. }
|
||||
'{ }
|
||||
'{ This file contains the default template and is required for the form }
|
||||
'{ rendering. Improper modifications may result in incorrect behavior of }
|
||||
'{ the appointment form. }
|
||||
'{ }
|
||||
'{ In order to create and use your own custom template, perform the following }
|
||||
'{ steps: }
|
||||
'{ 1. Save a copy of this file with a different name in another location. }
|
||||
'{ 2. Specify the file location as the 'OptionsForms.AppointmentFormTemplateUrl'}
|
||||
'{ property of the ASPxScheduler control. }
|
||||
'{ 3. If you need custom fields to be displayed and processed, you should }
|
||||
'{ accomplish steps 4-9; otherwise, go to step 10. }
|
||||
'{ 4. Create a class, derived from the AppointmentFormTemplateContainer, }
|
||||
'{ containing custom properties. This class definition can be located }
|
||||
'{ within a class file in the App_Code folder. }
|
||||
'{ 5. Replace AppointmentFormTemplateContainer references in the template }
|
||||
'{ page with the name of the class you've created in step 4. }
|
||||
'{ 6. Handle the AppointmentFormShowing event to create an instance of the }
|
||||
'{ template container class, defined in step 4, and specify it as the }
|
||||
'{ destination container instead of the default one. }
|
||||
'{ 7. Define a class, which inherits from the }
|
||||
'{ DevExpress.Web.ASPxScheduler.Internal.AppointmentFormController. }
|
||||
'{ This class provides data exchange between the form and the appointment. }
|
||||
'{ You should override ApplyCustomFieldsValues() method of the base class. }
|
||||
'{ 8. Define a class, which inherits from the }
|
||||
'{ DevExpress.Web.ASPxScheduler.Internal.AppointmentFormSaveCallbackCommand. }
|
||||
'{ This class creates an instance of the AppointmentFormController inheritor }
|
||||
'{ (defined in step 7) via the CreateAppointmentFormController method and }
|
||||
'{ overrides the AssignControllerValues method of the base class to collect }
|
||||
'{ user data from the form's editors. }
|
||||
'{ 9. Handle the BeforeExecuteCallbackCommand event. The event handler code }
|
||||
'{ should create an instance of the class defined in step 8, and specify it }
|
||||
'{ as the destination command instead of the default one. }
|
||||
'{ 10. Modify the overall appearance of the page and its layout. }
|
||||
'{ }
|
||||
'{************************************************************************************}
|
||||
'
|
||||
|
||||
Imports Microsoft.VisualBasic
|
||||
Imports System
|
||||
Imports System.Web.UI
|
||||
Imports DevExpress.XtraScheduler
|
||||
Imports DevExpress.Web
|
||||
Imports DevExpress.Web.ASPxScheduler
|
||||
Imports DevExpress.Web.ASPxScheduler.Internal
|
||||
Imports System.Collections
|
||||
Imports System.Collections.Generic
|
||||
Imports DevExpress.XtraScheduler.Localization
|
||||
|
||||
Partial Public Class AppointmentForm
|
||||
Inherits SchedulerFormControl
|
||||
Public Overrides ReadOnly Property ClassName() As String
|
||||
Get
|
||||
Return "ASPxAppointmentForm"
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property CanShowReminders() As Boolean
|
||||
Get
|
||||
Return (CType(Parent, AppointmentFormTemplateContainer)).Control.Storage.EnableReminders
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property ResourceSharing() As Boolean
|
||||
Get
|
||||
Return (CType(Parent, AppointmentFormTemplateContainer)).Control.Storage.ResourceSharing
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property ResourceDataSource() As IEnumerable
|
||||
Get
|
||||
Return (CType(Parent, AppointmentFormTemplateContainer)).ResourceDataSource
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
|
||||
'PrepareChildControls();
|
||||
tbSubject.Focus()
|
||||
End Sub
|
||||
Public Overrides Sub DataBind()
|
||||
MyBase.DataBind()
|
||||
|
||||
Dim container As AppointmentFormTemplateContainer = CType(Parent, AppointmentFormTemplateContainer)
|
||||
Dim apt As Appointment = container.Appointment
|
||||
edtLabel.SelectedIndex = apt.LabelId
|
||||
edtStatus.SelectedIndex = apt.StatusId
|
||||
|
||||
PopulateResourceEditors(apt, container)
|
||||
|
||||
AppointmentRecurrenceForm1.Visible = container.ShouldShowRecurrence
|
||||
|
||||
If container.Appointment.HasReminder Then
|
||||
cbReminder.Value = container.Appointment.Reminder.TimeBeforeStart.ToString()
|
||||
chkReminder.Checked = True
|
||||
Else
|
||||
cbReminder.ClientEnabled = False
|
||||
End If
|
||||
|
||||
btnOk.ClientSideEvents.Click = container.SaveHandler
|
||||
btnCancel.ClientSideEvents.Click = container.CancelHandler
|
||||
btnDelete.ClientSideEvents.Click = container.DeleteHandler
|
||||
|
||||
'btnDelete.Enabled = !container.IsNewAppointment;
|
||||
End Sub
|
||||
Private Sub PopulateResourceEditors(ByVal apt As Appointment, ByVal container As AppointmentFormTemplateContainer)
|
||||
If ResourceSharing Then
|
||||
Dim edtMultiResource As ASPxListBox = TryCast(ddResource.FindControl("edtMultiResource"), ASPxListBox)
|
||||
If edtMultiResource Is Nothing Then
|
||||
Return
|
||||
End If
|
||||
SetListBoxSelectedValues(edtMultiResource, apt.ResourceIds)
|
||||
Dim multiResourceString As List(Of String) = GetListBoxSeletedItemsText(edtMultiResource)
|
||||
Dim stringResourceNone As String = SchedulerLocalizer.GetString(SchedulerStringId.Caption_ResourceNone)
|
||||
ddResource.Value = stringResourceNone
|
||||
If multiResourceString.Count > 0 Then
|
||||
ddResource.Value = String.Join(", ", multiResourceString.ToArray())
|
||||
End If
|
||||
ddResource.JSProperties.Add("cp_Caption_ResourceNone", stringResourceNone)
|
||||
Else
|
||||
If (Not Object.Equals(apt.ResourceId, Resource.Empty.Id)) Then
|
||||
edtResource.Value = apt.ResourceId.ToString()
|
||||
Else
|
||||
edtResource.Value = SchedulerIdHelper.EmptyResourceId
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
Private Function GetListBoxSeletedItemsText(ByVal listBox As ASPxListBox) As List(Of String)
|
||||
Dim result As New List(Of String)()
|
||||
For Each editItem As ListEditItem In listBox.Items
|
||||
If editItem.Selected Then
|
||||
result.Add(editItem.Text)
|
||||
End If
|
||||
Next editItem
|
||||
Return result
|
||||
End Function
|
||||
Private Sub SetListBoxSelectedValues(ByVal listBox As ASPxListBox, ByVal values As IEnumerable)
|
||||
listBox.Value = Nothing
|
||||
For Each value As Object In values
|
||||
Dim item As ListEditItem = listBox.Items.FindByValue(value.ToString())
|
||||
If item IsNot Nothing Then
|
||||
item.Selected = True
|
||||
End If
|
||||
Next value
|
||||
End Sub
|
||||
Protected Overrides Sub PrepareChildControls()
|
||||
Dim container As AppointmentFormTemplateContainer = CType(Parent, AppointmentFormTemplateContainer)
|
||||
Dim control As ASPxScheduler = container.Control
|
||||
|
||||
AppointmentRecurrenceForm1.EditorsInfo = New EditorsInfo(control, control.Styles.FormEditors, control.Images.FormEditors, control.Styles.Buttons)
|
||||
MyBase.PrepareChildControls()
|
||||
End Sub
|
||||
Protected Overrides Function GetChildEditors() As ASPxEditBase()
|
||||
Dim edits() As ASPxEditBase = { lblSubject, tbSubject, lblLocation, tbLocation, lblLabel, edtLabel, lblStartDate, edtStartDate, lblEndDate, edtEndDate, lblStatus, edtStatus, lblAllDay, chkAllDay, lblResource, edtResource, tbDescription, cbReminder, ddResource, chkReminder, GetMultiResourceEditor() }
|
||||
|
||||
Return edits
|
||||
End Function
|
||||
Private Function GetMultiResourceEditor() As ASPxEditBase
|
||||
If ddResource IsNot Nothing Then
|
||||
Return TryCast(ddResource.FindControl("edtMultiResource"), ASPxEditBase)
|
||||
End If
|
||||
Return Nothing
|
||||
End Function
|
||||
Protected Overrides Function GetChildButtons() As ASPxButton()
|
||||
Dim buttons() As ASPxButton = { btnOk, btnCancel, btnDelete }
|
||||
Return buttons
|
||||
End Function
|
||||
End Class
|
||||
@@ -0,0 +1,296 @@
|
||||
<%--
|
||||
{************************************************************************************}
|
||||
{ }
|
||||
{ DO NOT MODIFY THIS FILE! }
|
||||
{ }
|
||||
{ It will be overwritten without prompting when a new version becomes }
|
||||
{ available. All your changes will be lost. }
|
||||
{ }
|
||||
{ This file contains the default template and is required for the form }
|
||||
{ rendering. Improper modifications may result in incorrect behavior of }
|
||||
{ the appointment form. }
|
||||
{ }
|
||||
{ In order to create and use your own custom template, perform the following }
|
||||
{ steps: }
|
||||
{ 1. Save a copy of this file with a different name in another location. }
|
||||
{ 2. Specify the file location as the 'OptionsForms.AppointmentFormTemplateUrl'}
|
||||
{ property of the ASPxScheduler control. }
|
||||
{ 3. If you need custom fields to be displayed and processed, you should }
|
||||
{ accomplish steps 4-9; otherwise, go to step 10. }
|
||||
{ 4. Create a class, derived from the AppointmentFormTemplateContainer, }
|
||||
{ containing custom properties. This class definition can be located }
|
||||
{ within a class file in the App_Code folder. }
|
||||
{ 5. Replace AppointmentFormTemplateContainer references in the template }
|
||||
{ page with the name of the class you've created in step 4. }
|
||||
{ 6. Handle the AppointmentFormShowing event to create an instance of the }
|
||||
{ template container class, defined in step 4, and specify it as the }
|
||||
{ destination container instead of the default one. }
|
||||
{ 7. Define a class, which inherits from the }
|
||||
{ DevExpress.Web.ASPxScheduler.Internal.AppointmentFormController. }
|
||||
{ This class provides data exchange between the form and the appointment. }
|
||||
{ You should override ApplyCustomFieldsValues() method of the base class. }
|
||||
{ 8. Define a class, which inherits from the }
|
||||
{ DevExpress.Web.ASPxScheduler.Internal.AppointmentFormSaveCallbackCommand. }
|
||||
{ This class creates an instance of the AppointmentFormController inheritor }
|
||||
{ (defined in step 7) via the CreateAppointmentFormController method and }
|
||||
{ overrides the AssignControllerValues method of the base class to collect }
|
||||
{ user data from the form's editors. }
|
||||
{ 9. Handle the BeforeExecuteCallbackCommand event. The event handler code }
|
||||
{ should create an instance of the class defined in step 8, and specify it }
|
||||
{ as the destination command instead of the default one. }
|
||||
{ 10. Modify the overall appearance of the page and its layout. }
|
||||
{ }
|
||||
{************************************************************************************}
|
||||
--%>
|
||||
|
||||
<%@ Control Language="vb" AutoEventWireup="true" Inherits="AppointmentFormEx" Codebehind="AppointmentFormEx.ascx.vb" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web" TagPrefix="dxe" %>
|
||||
<%@ Register Assembly="DevExpress.Web.ASPxScheduler.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxScheduler.Controls" TagPrefix="dxsc" %>
|
||||
<%@ Register Assembly="DevExpress.Web.ASPxScheduler.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxScheduler" TagPrefix="dxwschs" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web" TagPrefix="dxcp" %>
|
||||
|
||||
<table class="dxscAppointmentForm" cellpadding="0" cellspacing="0" style="width: 100%; height: 230px;">
|
||||
<tr>
|
||||
<td class="dxscDoubleCell" colspan="2">
|
||||
<table class="dxscLabelControlPair" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="dxscLabelCell">
|
||||
<dxe:ASPxLabel ID="lblSubject" runat="server" AssociatedControlID="tbSubject" Text="Subject:">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="dxscControlCell">
|
||||
<dxe:ASPxTextBox ClientInstanceName="_dx" ID="tbSubject" runat="server" Width="100%" Text='<%#(CType(Container, AppointmentFormTemplateContainer)).Appointment.Subject%>' />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="dxscSingleCell">
|
||||
<table class="dxscLabelControlPair" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="dxscLabelCell">
|
||||
<dxe:ASPxLabel ID="lblLocation" runat="server" AssociatedControlID="tbLocation" Text="Location:">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="dxscControlCell">
|
||||
<dxe:ASPxTextBox ClientInstanceName="_dx" ID="tbLocation" runat="server" Width="100%" Text='<%#(CType(Container, AppointmentFormTemplateContainer)).Appointment.Location%>' />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="dxscSingleCell">
|
||||
<table class="dxscLabelControlPair" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="dxscLabelCell" style="padding-left: 25px;">
|
||||
<dxe:ASPxLabel ID="lblLabel" runat="server" AssociatedControlID="edtLabel" Text="Label:">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="dxscControlCell">
|
||||
<dxe:ASPxComboBox ClientInstanceName="_dx" ID="edtLabel" runat="server" Width="100%" DataSource='<%#(CType(Container, AppointmentFormTemplateContainer)).LabelDataSource%>' />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="dxscSingleCell">
|
||||
<table class="dxscLabelControlPair" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="dxscLabelCell">
|
||||
<dxe:ASPxLabel ID="lblStartDate" runat="server" AssociatedControlID="edtStartDate" Text="Start time:" Wrap="false">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="dxscControlCell">
|
||||
<dxe:ASPxDateEdit ClientInstanceName="_dx" ID="edtStartDate" runat="server" Width="100%" Date='<%#(CType(Container, AppointmentFormTemplateContainer)).Start%>' EditFormat="DateTime" DateOnError="Undo" AllowNull="false"/>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="dxscSingleCell">
|
||||
<table class="dxscLabelControlPair" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="dxscLabelCell" style="padding-left: 25px;">
|
||||
<dxe:ASPxLabel runat="server" ID="lblEndDate" Text="End time:" Wrap="false" AssociatedControlID="edtEndDate"/>
|
||||
</td>
|
||||
<td class="dxscControlCell">
|
||||
<dxe:ASPxDateEdit id="edtEndDate" runat="server" Date='<%#(CType(Container, AppointmentFormTemplateContainer)).End%>'
|
||||
EditFormat="DateTime" Width="100%" DateOnError="Undo" AllowNull="false">
|
||||
</dxe:ASPxDateEdit>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="dxscSingleCell">
|
||||
<table class="dxscLabelControlPair" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="dxscLabelCell">
|
||||
<dxe:ASPxLabel ID="lblStatus" runat="server" AssociatedControlID="edtStatus" Text="Show time as:" Wrap="false">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="dxscControlCell">
|
||||
<dxe:ASPxComboBox ClientInstanceName="_dx" ID="edtStatus" runat="server" Width="100%" DataSource='<%#(CType(Container, AppointmentFormTemplateContainer)).StatusDataSource%>' />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="dxscSingleCell" style="padding-left: 22px;">
|
||||
<table class="dxscLabelControlPair" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td style="width: 20px; height: 20px;">
|
||||
<dxe:ASPxCheckBox ClientInstanceName="_dx" ID="chkAllDay" runat="server" Checked='<%#(CType(Container, AppointmentFormTemplateContainer)).Appointment.AllDay%>' />
|
||||
</td>
|
||||
<td style="padding-left: 2px;">
|
||||
<dxe:ASPxLabel ID="lblAllDay" runat="server" Text="All day event" AssociatedControlID="chkAllDay" />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<%
|
||||
If CanShowReminders Then
|
||||
%>
|
||||
<td class="dxscSingleCell">
|
||||
<%
|
||||
Else
|
||||
%>
|
||||
<td class="dxscDoubleCell" colspan="2">
|
||||
<%
|
||||
End If
|
||||
%>
|
||||
<table class="dxscLabelControlPair" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="dxscLabelCell">
|
||||
<dxe:ASPxLabel ID="lblResource" runat="server" AssociatedControlID="edtResource" Text="Resource:">
|
||||
</dxe:ASPxLabel>
|
||||
</td>
|
||||
<td class="dxscControlCell">
|
||||
<%
|
||||
If ResourceSharing Then
|
||||
%>
|
||||
<dxe:ASPxDropDownEdit id="ddResource" runat="server" Width="100%" ClientInstanceName="ddResource" Enabled='<%#(CType(Container, AppointmentFormTemplateContainer)).CanEditResource%>' AllowUserInput="false">
|
||||
<DropDownWindowTemplate>
|
||||
<dxe:ASPxListBox id="edtMultiResource" runat="server" width="100%" SelectionMode="CheckColumn" DataSource='<%#ResourceDataSource%>' Border-BorderWidth="0">
|
||||
<ClientSideEvents SelectedIndexChanged="function(s, e) {
|
||||
var resourceNames = new Array();
|
||||
var items = s.GetSelectedItems();
|
||||
var count = items.length;
|
||||
if (count > 0) {
|
||||
for(var i=0; i<count; i++)
|
||||
resourceNames.push(items[i].text);
|
||||
}
|
||||
else
|
||||
resourceNames.push(ddResource.cp_Caption_ResourceNone);
|
||||
ddResource.SetValue(resourceNames.join(', '));
|
||||
}"></ClientSideEvents>
|
||||
</dxe:ASPxListBox>
|
||||
</DropDownWindowTemplate>
|
||||
</dxe:ASPxDropDownEdit>
|
||||
<%
|
||||
Else
|
||||
%>
|
||||
<dxe:ASPxComboBox ClientInstanceName="_dx" ID="edtResource" runat="server" Width="100%" DataSource='<%#ResourceDataSource%> ' Enabled='<%#(CType(Container, AppointmentFormTemplateContainer)).CanEditResource%>' />
|
||||
<%
|
||||
End If
|
||||
%>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<%
|
||||
If CanShowReminders Then
|
||||
%>
|
||||
<td class="dxscSingleCell">
|
||||
<table class="dxscLabelControlPair" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td class="dxscLabelCell" style="padding-left: 22px;">
|
||||
<table class="dxscLabelControlPair" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td style="width: 20px; height: 20px;">
|
||||
<dxe:ASPxCheckBox ClientInstanceName="_dx" ID="chkReminder" runat="server">
|
||||
<ClientSideEvents CheckedChanged="function(s, e) { OnChkReminderCheckedChanged(s, e); }" />
|
||||
</dxe:ASPxCheckBox>
|
||||
</td>
|
||||
<td style="padding-left: 2px;">
|
||||
<dxe:ASPxLabel ID="lblReminder" runat="server" Text="Reminder" AssociatedControlID="chkReminder" />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="dxscControlCell" style="padding-left: 3px">
|
||||
<dxe:ASPxComboBox ID="cbReminder" ClientInstanceName="_dxAppointmentForm_cbReminder" runat="server" Width="100%" DataSource='<%#(CType(Container, AppointmentFormTemplateContainer)).ReminderDataSource%>' />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<%
|
||||
End If
|
||||
%>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="dxscDoubleCell" colspan="2" style="height: 90px;">
|
||||
<dxe:ASPxMemo ClientInstanceName="_dx" ID="tbDescription" runat="server" Width="100%" Rows="6" Text='<%#(CType(Container, AppointmentFormTemplateContainer)).Appointment.Description%>' />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td class="dxscDoubleCell" colspan="2">
|
||||
<dxe:ASPxCheckBox ID="chkRecurrence" runat="server" Text="Recurrence" Checked='<%#(CType(Container, AppointmentFormTemplateContainer)).Appointment.IsRecurring%>'>
|
||||
<ClientSideEvents CheckedChanged="function(s,e) { if (s.GetChecked()) { if (RecurrencePanel.mainElement.innerHTML.replace(/^\s*(\b.*\b|)\s*$/, '') == '') RecurrencePanel.PerformCallback(); else RecurrencePanel.SetVisible(true); } else RecurrencePanel.SetVisible(false); }"
|
||||
/>
|
||||
</dxe:ASPxCheckBox>
|
||||
<dxcp:ASPxCallbackPanel ID="RecurrencePanel" runat="server" Width="100%" ClientInstanceName="RecurrencePanel"
|
||||
OnCallback="OnCallback">
|
||||
</dxcp:ASPxCallbackPanel>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<table cellpadding="0" cellspacing="0" style="width: 100%; height: 35px;">
|
||||
<tr>
|
||||
<td style="width: 100%; height: 100%;" align="center">
|
||||
<table style="height: 100%;">
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxButton runat="server" ClientInstanceName="_dx" ID="btnOk" Text="OK" UseSubmitBehavior="false" AutoPostBack="false"
|
||||
EnableViewState="false" Width="91px"/>
|
||||
</td>
|
||||
<td>
|
||||
<dxe:ASPxButton runat="server" ClientInstanceName="_dx" ID="btnCancel" Text="Cancel" UseSubmitBehavior="false" AutoPostBack="false" EnableViewState="false"
|
||||
Width="91px" CausesValidation="False" />
|
||||
</td>
|
||||
<td>
|
||||
<dxe:ASPxButton runat="server" ClientInstanceName="_dx" ID="btnDelete" Text="Delete" UseSubmitBehavior="false"
|
||||
AutoPostBack="false" EnableViewState="false" Width="91px"
|
||||
Enabled='<%#(CType(Container, AppointmentFormTemplateContainer)).CanDeleteAppointment%>'
|
||||
CausesValidation="False" />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<table cellpadding="0" cellspacing="0" style="width: 100%;">
|
||||
<tr>
|
||||
<td style="width: 100%;" align="left">
|
||||
<dxsc:ASPxSchedulerStatusInfo runat="server" ID="schedulerStatusInfo" Priority="1" MasterControlId='<%#(CType(Container, DevExpress.Web.ASPxScheduler.AppointmentFormTemplateContainer)).ControlId%>' />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<script id="dxss_ASPxSchedulerAppoinmentForm" type="text/javascript">
|
||||
function OnChkReminderCheckedChanged(s, e) {
|
||||
var isReminderEnabled = s.GetValue();
|
||||
if (isReminderEnabled)
|
||||
_dxAppointmentForm_cbReminder.SetSelectedIndex(3);
|
||||
else
|
||||
_dxAppointmentForm_cbReminder.SetSelectedIndex(-1);
|
||||
|
||||
_dxAppointmentForm_cbReminder.SetEnabled(isReminderEnabled);
|
||||
|
||||
}
|
||||
</script>
|
||||
@@ -0,0 +1,258 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class AppointmentFormEx
|
||||
|
||||
'''<summary>
|
||||
'''lblSubject control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblSubject As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''tbSubject control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents tbSubject As Global.DevExpress.Web.ASPxTextBox
|
||||
|
||||
'''<summary>
|
||||
'''lblLocation control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblLocation As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''tbLocation control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents tbLocation As Global.DevExpress.Web.ASPxTextBox
|
||||
|
||||
'''<summary>
|
||||
'''lblLabel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblLabel As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''edtLabel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents edtLabel As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''lblStartDate control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblStartDate As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''edtStartDate control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents edtStartDate As Global.DevExpress.Web.ASPxDateEdit
|
||||
|
||||
'''<summary>
|
||||
'''lblEndDate control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblEndDate As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''edtEndDate control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents edtEndDate As Global.DevExpress.Web.ASPxDateEdit
|
||||
|
||||
'''<summary>
|
||||
'''lblStatus control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblStatus As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''edtStatus control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents edtStatus As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''chkAllDay control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents chkAllDay As Global.DevExpress.Web.ASPxCheckBox
|
||||
|
||||
'''<summary>
|
||||
'''lblAllDay control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblAllDay As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''lblResource control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblResource As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''ddResource control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ddResource As Global.DevExpress.Web.ASPxDropDownEdit
|
||||
|
||||
'''<summary>
|
||||
'''edtResource control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents edtResource As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''chkReminder control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents chkReminder As Global.DevExpress.Web.ASPxCheckBox
|
||||
|
||||
'''<summary>
|
||||
'''lblReminder control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblReminder As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''cbReminder control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents cbReminder As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''tbDescription control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents tbDescription As Global.DevExpress.Web.ASPxMemo
|
||||
|
||||
'''<summary>
|
||||
'''chkRecurrence control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents chkRecurrence As Global.DevExpress.Web.ASPxCheckBox
|
||||
|
||||
'''<summary>
|
||||
'''RecurrencePanel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents RecurrencePanel As Global.DevExpress.Web.ASPxCallbackPanel
|
||||
|
||||
'''<summary>
|
||||
'''btnOk control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnOk As Global.DevExpress.Web.ASPxButton
|
||||
|
||||
'''<summary>
|
||||
'''btnCancel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnCancel As Global.DevExpress.Web.ASPxButton
|
||||
|
||||
'''<summary>
|
||||
'''btnDelete control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnDelete As Global.DevExpress.Web.ASPxButton
|
||||
|
||||
'''<summary>
|
||||
'''schedulerStatusInfo control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents schedulerStatusInfo As Global.DevExpress.Web.ASPxScheduler.Controls.ASPxSchedulerStatusInfo
|
||||
End Class
|
||||
@@ -0,0 +1,192 @@
|
||||
'
|
||||
'{************************************************************************************}
|
||||
'{ }
|
||||
'{ DO NOT MODIFY THIS FILE! }
|
||||
'{ }
|
||||
'{ It will be overwritten without prompting when a new version becomes }
|
||||
'{ available. All your changes will be lost. }
|
||||
'{ }
|
||||
'{ This file contains the default template and is required for the form }
|
||||
'{ rendering. Improper modifications may result in incorrect behavior of }
|
||||
'{ the appointment form. }
|
||||
'{ }
|
||||
'{ In order to create and use your own custom template, perform the following }
|
||||
'{ steps: }
|
||||
'{ 1. Save a copy of this file with a different name in another location. }
|
||||
'{ 2. Specify the file location as the 'OptionsForms.AppointmentFormTemplateUrl'}
|
||||
'{ property of the ASPxScheduler control. }
|
||||
'{ 3. If you need custom fields to be displayed and processed, you should }
|
||||
'{ accomplish steps 4-9; otherwise, go to step 10. }
|
||||
'{ 4. Create a class, derived from the AppointmentFormTemplateContainer, }
|
||||
'{ containing custom properties. This class definition can be located }
|
||||
'{ within a class file in the App_Code folder. }
|
||||
'{ 5. Replace AppointmentFormTemplateContainer references in the template }
|
||||
'{ page with the name of the class you've created in step 4. }
|
||||
'{ 6. Handle the AppointmentFormShowing event to create an instance of the }
|
||||
'{ template container class, defined in step 4, and specify it as the }
|
||||
'{ destination container instead of the default one. }
|
||||
'{ 7. Define a class, which inherits from the }
|
||||
'{ DevExpress.Web.ASPxScheduler.Internal.AppointmentFormController. }
|
||||
'{ This class provides data exchange between the form and the appointment. }
|
||||
'{ You should override ApplyCustomFieldsValues() method of the base class. }
|
||||
'{ 8. Define a class, which inherits from the }
|
||||
'{ DevExpress.Web.ASPxScheduler.Internal.AppointmentFormSaveCallbackCommand. }
|
||||
'{ This class creates an instance of the AppointmentFormController inheritor }
|
||||
'{ (defined in step 7) via the CreateAppointmentFormController method and }
|
||||
'{ overrides the AssignControllerValues method of the base class to collect }
|
||||
'{ user data from the form's editors. }
|
||||
'{ 9. Handle the BeforeExecuteCallbackCommand event. The event handler code }
|
||||
'{ should create an instance of the class defined in step 8, and specify it }
|
||||
'{ as the destination command instead of the default one. }
|
||||
'{ 10. Modify the overall appearance of the page and its layout. }
|
||||
'{ }
|
||||
'{************************************************************************************}
|
||||
'
|
||||
|
||||
Imports Microsoft.VisualBasic
|
||||
Imports System
|
||||
Imports System.Web.UI
|
||||
Imports DevExpress.XtraScheduler
|
||||
Imports DevExpress.Web
|
||||
Imports DevExpress.Web.ASPxScheduler
|
||||
Imports DevExpress.Web.ASPxScheduler.Internal
|
||||
Imports System.Collections
|
||||
Imports System.Collections.Generic
|
||||
Imports DevExpress.XtraScheduler.Localization
|
||||
Imports DevExpress.Web.ASPxScheduler.Controls
|
||||
|
||||
Partial Public Class AppointmentFormEx
|
||||
Inherits SchedulerFormControl
|
||||
Private recurrenceControl_Renamed As AppointmentRecurrenceControl
|
||||
|
||||
Public ReadOnly Property CanShowReminders() As Boolean
|
||||
Get
|
||||
Return (CType(Parent, AppointmentFormTemplateContainer)).Control.Storage.EnableReminders
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property ResourceSharing() As Boolean
|
||||
Get
|
||||
Return (CType(Parent, AppointmentFormTemplateContainer)).Control.Storage.ResourceSharing
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property ResourceDataSource() As IEnumerable
|
||||
Get
|
||||
Return (CType(Parent, AppointmentFormTemplateContainer)).ResourceDataSource
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property RecurrenceControl() As AppointmentRecurrenceControl
|
||||
Get
|
||||
Return recurrenceControl_Renamed
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
|
||||
RenderRecurrenceControl(False)
|
||||
'PrepareChildControls();
|
||||
tbSubject.Focus()
|
||||
End Sub
|
||||
Protected Overrides Sub Render(ByVal writer As System.Web.UI.HtmlTextWriter)
|
||||
Dim container As AppointmentFormTemplateContainer = CType(Parent, AppointmentFormTemplateContainer)
|
||||
Dim control As ASPxScheduler = container.Control
|
||||
RecurrenceControl.EditorsInfo = New EditorsInfo(control, control.Styles.FormEditors, control.Images.FormEditors, control.Styles.Buttons)
|
||||
RecurrenceControl.Visible = chkRecurrence.Checked AndAlso chkRecurrence.Visible
|
||||
MyBase.Render(writer)
|
||||
End Sub
|
||||
Public Overrides Sub DataBind()
|
||||
MyBase.DataBind()
|
||||
Dim container As AppointmentFormTemplateContainer = CType(Parent, AppointmentFormTemplateContainer)
|
||||
Dim apt As Appointment = container.Appointment
|
||||
edtLabel.SelectedIndex = apt.LabelId
|
||||
edtStatus.SelectedIndex = apt.StatusId
|
||||
|
||||
PopulateResourceEditors(apt, container)
|
||||
|
||||
chkRecurrence.Visible = container.ShouldShowRecurrence
|
||||
'AppointmentRecurrenceForm1.Visible = container.ShouldShowRecurrence;
|
||||
|
||||
If container.Appointment.HasReminder Then
|
||||
cbReminder.Value = container.Appointment.Reminder.TimeBeforeStart.ToString()
|
||||
chkReminder.Checked = True
|
||||
Else
|
||||
cbReminder.ClientEnabled = False
|
||||
End If
|
||||
|
||||
btnOk.ClientSideEvents.Click = container.SaveHandler
|
||||
btnCancel.ClientSideEvents.Click = container.CancelHandler
|
||||
btnDelete.ClientSideEvents.Click = container.DeleteHandler
|
||||
End Sub
|
||||
Private Sub PopulateResourceEditors(ByVal apt As Appointment, ByVal container As AppointmentFormTemplateContainer)
|
||||
If ResourceSharing Then
|
||||
Dim edtMultiResource As ASPxListBox = TryCast(ddResource.FindControl("edtMultiResource"), ASPxListBox)
|
||||
If edtMultiResource Is Nothing Then
|
||||
Return
|
||||
End If
|
||||
SetListBoxSelectedValues(edtMultiResource, apt.ResourceIds)
|
||||
Dim multiResourceString As List(Of String) = GetListBoxSeletedItemsText(edtMultiResource)
|
||||
Dim stringResourceNone As String = SchedulerLocalizer.GetString(SchedulerStringId.Caption_ResourceNone)
|
||||
ddResource.Value = stringResourceNone
|
||||
If multiResourceString.Count > 0 Then
|
||||
ddResource.Value = String.Join(", ", multiResourceString.ToArray())
|
||||
End If
|
||||
ddResource.JSProperties.Add("cp_Caption_ResourceNone", stringResourceNone)
|
||||
Else
|
||||
If (Not Object.Equals(apt.ResourceId, Resource.Empty.Id)) Then
|
||||
edtResource.Value = apt.ResourceId.ToString()
|
||||
Else
|
||||
edtResource.Value = SchedulerIdHelper.EmptyResourceId
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
Private Function GetListBoxSeletedItemsText(ByVal listBox As ASPxListBox) As List(Of String)
|
||||
Dim result As New List(Of String)()
|
||||
For Each editItem As ListEditItem In listBox.Items
|
||||
If editItem.Selected Then
|
||||
result.Add(editItem.Text)
|
||||
End If
|
||||
Next editItem
|
||||
Return result
|
||||
End Function
|
||||
Private Sub SetListBoxSelectedValues(ByVal listBox As ASPxListBox, ByVal values As IEnumerable)
|
||||
listBox.Value = Nothing
|
||||
For Each value As Object In values
|
||||
Dim item As ListEditItem = listBox.Items.FindByValue(value.ToString())
|
||||
If item IsNot Nothing Then
|
||||
item.Selected = True
|
||||
End If
|
||||
Next value
|
||||
End Sub
|
||||
Protected Overrides Function GetChildEditors() As ASPxEditBase()
|
||||
Dim edits() As ASPxEditBase = { lblSubject, tbSubject, lblLocation, tbLocation, lblLabel, edtLabel, lblStartDate, edtStartDate, lblEndDate, edtEndDate, lblStatus, edtStatus, lblAllDay, chkAllDay, lblResource, edtResource, tbDescription, cbReminder, ddResource }
|
||||
Return edits
|
||||
End Function
|
||||
Protected Overrides Function GetChildButtons() As ASPxButton()
|
||||
Dim buttons() As ASPxButton = { btnOk, btnCancel, btnDelete }
|
||||
Return buttons
|
||||
End Function
|
||||
Protected Sub OnCallback(ByVal sender As Object, ByVal e As CallbackEventArgsBase)
|
||||
RenderRecurrenceControl(True)
|
||||
End Sub
|
||||
Protected Sub RenderRecurrenceControl(ByVal isRecurring As Boolean)
|
||||
If Me.recurrenceControl_Renamed IsNot Nothing Then
|
||||
Me.recurrenceControl_Renamed.Visible = isRecurring
|
||||
Return
|
||||
End If
|
||||
Dim container As AppointmentFormTemplateContainer = CType(Parent, AppointmentFormTemplateContainer)
|
||||
Me.recurrenceControl_Renamed = New AppointmentRecurrenceControl()
|
||||
recurrenceControl_Renamed.ID = "RecurrenceControl1"
|
||||
recurrenceControl_Renamed.Visible = isRecurring 'container.ShouldShowRecurrence;
|
||||
recurrenceControl_Renamed.DayNumber = container.RecurrenceDayNumber
|
||||
recurrenceControl_Renamed.End = container.RecurrenceEnd
|
||||
recurrenceControl_Renamed.Month = container.RecurrenceMonth
|
||||
recurrenceControl_Renamed.OccurrenceCount = container.RecurrenceOccurrenceCount
|
||||
recurrenceControl_Renamed.Periodicity = container.RecurrencePeriodicity
|
||||
recurrenceControl_Renamed.RecurrenceRange = container.RecurrenceRange
|
||||
recurrenceControl_Renamed.Start = container.RecurrenceStart
|
||||
recurrenceControl_Renamed.WeekDays = container.RecurrenceWeekDays
|
||||
recurrenceControl_Renamed.WeekOfMonth = container.RecurrenceWeekOfMonth
|
||||
recurrenceControl_Renamed.RecurrenceType = container.RecurrenceType
|
||||
recurrenceControl_Renamed.IsFormRecreated = container.IsFormRecreated
|
||||
RecurrencePanel.Controls.Add(recurrenceControl_Renamed)
|
||||
recurrenceControl_Renamed.EditorsInfo = New EditorsInfo(container.Control, container.Control.Styles.FormEditors, container.Control.Images.FormEditors, container.Control.Styles.Buttons)
|
||||
End Sub
|
||||
End Class
|
||||
@@ -0,0 +1,22 @@
|
||||
<%@ Control Language="vb" AutoEventWireup="true" Inherits="UserForms_AppointmentToolTip" Codebehind="AppointmentToolTip.ascx.vb" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2" Namespace="DevExpress.Web"
|
||||
TagPrefix="dxe" %>
|
||||
<div runat="server" id="buttonDiv">
|
||||
<dxe:ASPxButton ID="btnShowMenu" runat="server" AutoPostBack="False" AllowFocus="False">
|
||||
<Border BorderWidth="0px" />
|
||||
<Paddings Padding="0px" />
|
||||
<FocusRectPaddings Padding="4px" />
|
||||
<FocusRectBorder BorderStyle="None" BorderWidth="0px" />
|
||||
</dxe:ASPxButton>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript" id="dxss_ASPxClientAppointmentToolTip">
|
||||
ASPxClientAppointmentToolTip = _aspxCreateClass(ASPxClientToolTipBase, {
|
||||
Initialize: function() {
|
||||
ASPxClientUtils.AttachEventToElement(this.controls.buttonDiv, "click", _aspxCreateDelegate(this.OnButtonDivClick, this));
|
||||
},
|
||||
OnButtonDivClick: function(s,e) {
|
||||
this.ShowAppointmentMenu(s);
|
||||
}
|
||||
});
|
||||
</script>
|
||||
@@ -0,0 +1,33 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class UserForms_AppointmentToolTip
|
||||
|
||||
'''<summary>
|
||||
'''buttonDiv control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents buttonDiv As Global.System.Web.UI.HtmlControls.HtmlGenericControl
|
||||
|
||||
'''<summary>
|
||||
'''btnShowMenu control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnShowMenu As Global.DevExpress.Web.ASPxButton
|
||||
End Class
|
||||
@@ -0,0 +1,38 @@
|
||||
Imports Microsoft.VisualBasic
|
||||
Imports System
|
||||
Imports System.Data
|
||||
Imports System.Configuration
|
||||
Imports System.Collections
|
||||
Imports System.Web
|
||||
Imports System.Web.Security
|
||||
Imports System.Web.UI
|
||||
Imports System.Web.UI.WebControls
|
||||
Imports System.Web.UI.WebControls.WebParts
|
||||
Imports System.Web.UI.HtmlControls
|
||||
Imports DevExpress.Web.ASPxScheduler
|
||||
|
||||
Partial Public Class UserForms_AppointmentToolTip
|
||||
Inherits ASPxSchedulerToolTipBase
|
||||
Public Overrides ReadOnly Property ToolTipShowStem() As Boolean
|
||||
Get
|
||||
Return False
|
||||
End Get
|
||||
End Property
|
||||
Public Overrides ReadOnly Property ClassName() As String
|
||||
Get
|
||||
Return "ASPxClientAppointmentToolTip"
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
|
||||
DevExpress.Web.ASPxWebControl.RegisterBaseScript(Page)
|
||||
End Sub
|
||||
Protected Overrides Sub OnLoad(ByVal e As EventArgs)
|
||||
MyBase.OnLoad(e)
|
||||
btnShowMenu.Image.Assign(GetSmartTagImage())
|
||||
End Sub
|
||||
Protected Overrides Function GetChildControls() As Control()
|
||||
Dim controls() As Control = { buttonDiv}
|
||||
Return controls
|
||||
End Function
|
||||
End Class
|
||||
@@ -0,0 +1,73 @@
|
||||
<%--
|
||||
{************************************************************************************}
|
||||
{ }
|
||||
{ DO NOT MODIFY THIS FILE! }
|
||||
{ }
|
||||
{ It will be overwritten without prompting when a new version becomes }
|
||||
{ available. All your changes will be lost. }
|
||||
{ }
|
||||
{ This file contains the default template and is required for the form }
|
||||
{ rendering. Improper modifications may result in incorrect behavior of }
|
||||
{ the appointment form. }
|
||||
{ }
|
||||
{ In order to create and use your own custom template, perform the following }
|
||||
{ steps: }
|
||||
{ 1. Save a copy of this file with a different name in another location. }
|
||||
{ 2. Specify the file location as the 'OptionsForms.GotoDateFormTemplateUrl' }
|
||||
{ property of the ASPxScheduler control. }
|
||||
{ 3. If you need to display and process additional controls, you }
|
||||
{ should accomplish steps 4-6; otherwise, go to step 7. }
|
||||
{ 4. Create a class, derived from the GotoDateFormTemplateContainer, }
|
||||
{ containing additional properties which correspond to your controls. }
|
||||
{ This class definition can be located within a class file in the App_Code }
|
||||
{ folder. }
|
||||
{ 5. Replace GotoDateFormTemplateContainer references in the template page }
|
||||
{ with the name of the class you've created in step 4. }
|
||||
{ 6. Handle the GotoDateFormShowing event to create an instance of the }
|
||||
{ template container class, defined in step 5, and specify it as the }
|
||||
{ destination container instead of the default one. }
|
||||
{ 7. Modify the overall appearance of the page and its layout. }
|
||||
{ }
|
||||
{************************************************************************************}
|
||||
--%>
|
||||
|
||||
<%@ Control Language="vb" AutoEventWireup="true" Inherits="GotoDateForm" Codebehind="GotoDateForm.ascx.vb" %>
|
||||
<%@ Register Assembly="DevExpress.Web.ASPxScheduler.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxScheduler" TagPrefix="dxwschs" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web"
|
||||
TagPrefix="dxe" %>
|
||||
|
||||
<table style="width:100%; height:100%">
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxLabel ID="lblDate" runat="server" Text="Date:" AssociatedControlID="edtDate" />
|
||||
</td>
|
||||
<td style="width:100%">
|
||||
<dxe:ASPxDateEdit ClientInstanceName="_dx" ID="edtDate" runat="server" Width="100%" Date='<%#(CType(Container, GotoDateFormTemplateContainer)).Date%>' />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<span style="white-space: nowrap;">
|
||||
<dxe:ASPxLabel ID="lblView" runat="server" Text="Show in:" AssociatedControlID="cbView"></dxe:ASPxLabel>
|
||||
</span>
|
||||
</td>
|
||||
<td style="width:100%">
|
||||
<dxe:ASPxComboBox ClientInstanceName="_dx" ID="cbView" runat="server" Width="100%" DataSource='<%#(CType(Container, GotoDateFormTemplateContainer)).ViewsDataSource%>'></dxe:ASPxComboBox>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center" colspan="2" style="width:100%">
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxButton ID="btnOk" ClientInstanceName="_dx" runat="server" Text="OK" UseSubmitBehavior="false" AutoPostBack="false" EnableViewState="false" Width="91px" />
|
||||
</td>
|
||||
<td>
|
||||
<dxe:ASPxButton ID="btnCancel" ClientInstanceName="_dx" runat="server" Text="Cancel" UseSubmitBehavior="false" AutoPostBack="false" EnableViewState="false"
|
||||
Width="91px" CausesValidation="False" />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
@@ -0,0 +1,69 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class GotoDateForm
|
||||
|
||||
'''<summary>
|
||||
'''lblDate control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblDate As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''edtDate control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents edtDate As Global.DevExpress.Web.ASPxDateEdit
|
||||
|
||||
'''<summary>
|
||||
'''lblView control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblView As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''cbView control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents cbView As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''btnOk control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnOk As Global.DevExpress.Web.ASPxButton
|
||||
|
||||
'''<summary>
|
||||
'''btnCancel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnCancel As Global.DevExpress.Web.ASPxButton
|
||||
End Class
|
||||
@@ -0,0 +1,70 @@
|
||||
'
|
||||
'{************************************************************************************}
|
||||
'{ }
|
||||
'{ DO NOT MODIFY THIS FILE! }
|
||||
'{ }
|
||||
'{ It will be overwritten without prompting when a new version becomes }
|
||||
'{ available. All your changes will be lost. }
|
||||
'{ }
|
||||
'{ This file contains the default template and is required for the form }
|
||||
'{ rendering. Improper modifications may result in incorrect behavior of }
|
||||
'{ the appointment form. }
|
||||
'{ }
|
||||
'{ In order to create and use your own custom template, perform the following }
|
||||
'{ steps: }
|
||||
'{ 1. Save a copy of this file with a different name in another location. }
|
||||
'{ 2. Specify the file location as the 'OptionsForms.GotoDateFormTemplateUrl' }
|
||||
'{ property of the ASPxScheduler control. }
|
||||
'{ 3. If you need to display and process additional controls, you }
|
||||
'{ should accomplish steps 4-6; otherwise, go to step 7. }
|
||||
'{ 4. Create a class, derived from the GotoDateFormTemplateContainer, }
|
||||
'{ containing additional properties which correspond to your controls. }
|
||||
'{ This class definition can be located within a class file in the App_Code }
|
||||
'{ folder. }
|
||||
'{ 5. Replace GotoDateFormTemplateContainer references in the template page }
|
||||
'{ with the name of the class you've created in step 4. }
|
||||
'{ 6. Handle the GotoDateFormShowing event to create an instance of the }
|
||||
'{ template container class, defined in step 5, and specify it as the }
|
||||
'{ destination container instead of the default one. }
|
||||
'{ 7. Modify the overall appearance of the page and its layout. }
|
||||
'{ }
|
||||
'{************************************************************************************}
|
||||
'
|
||||
|
||||
|
||||
Imports Microsoft.VisualBasic
|
||||
Imports System
|
||||
Imports DevExpress.Web
|
||||
Imports DevExpress.Web.ASPxScheduler
|
||||
|
||||
Partial Public Class GotoDateForm
|
||||
Inherits SchedulerFormControl
|
||||
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
|
||||
'PrepareChildControls();
|
||||
edtDate.Focus()
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub DataBind()
|
||||
MyBase.DataBind()
|
||||
Dim container As GotoDateFormTemplateContainer = CType(Parent, GotoDateFormTemplateContainer)
|
||||
cbView.Value = container.ActiveViewType.ToString()
|
||||
|
||||
btnOk.ClientSideEvents.Click = container.ApplyHandler
|
||||
btnCancel.ClientSideEvents.Click = container.CancelHandler
|
||||
|
||||
Dim scheduler As ASPxScheduler = container.Control
|
||||
Dim actualSchedulerInstanceName As String = scheduler.ClientInstanceName
|
||||
If String.IsNullOrEmpty(actualSchedulerInstanceName) Then
|
||||
actualSchedulerInstanceName = scheduler.ClientID
|
||||
End If
|
||||
edtDate.ClientSideEvents.LostFocus = String.Format("function(s,e) {{" & ControlChars.CrLf & " var date = s.GetDate();" & ControlChars.CrLf & " if (date == null || date == false) {{" & ControlChars.CrLf & " var selectionInterval = {0}.GetSelectedInterval();" & ControlChars.CrLf & " var startDate = selectionInterval.GetStart();" & ControlChars.CrLf & " s.SetDate(startDate);" & ControlChars.CrLf & " }}" & ControlChars.CrLf & " }}", actualSchedulerInstanceName)
|
||||
End Sub
|
||||
Protected Overrides Function GetChildEditors() As ASPxEditBase()
|
||||
Dim edits() As ASPxEditBase = { lblDate, edtDate, lblView, cbView }
|
||||
Return edits
|
||||
End Function
|
||||
Protected Overrides Function GetChildButtons() As ASPxButton()
|
||||
Dim buttons() As ASPxButton = { btnOk, btnCancel }
|
||||
Return buttons
|
||||
End Function
|
||||
End Class
|
||||
@@ -0,0 +1,84 @@
|
||||
<%--
|
||||
{************************************************************************************}
|
||||
{ }
|
||||
{ DO NOT MODIFY THIS FILE! }
|
||||
{ }
|
||||
{ It will be overwritten without prompting when a new version becomes }
|
||||
{ available. All your changes will be lost. }
|
||||
{ }
|
||||
{ This file contains the default template and is required for the appointment }
|
||||
{ rendering. Improper modifications may result in incorrect appearance of the }
|
||||
{ appointment. }
|
||||
{ }
|
||||
{ In order to create and use your own custom template, perform the following }
|
||||
{ steps: }
|
||||
{ 1. Save a copy of this file with a different name in another location. }
|
||||
{ 2. Add a Register tag in the .aspx page header for each template you use, }
|
||||
{ as follows: <%@ Register Src="PathToTemplateFile" TagName="NameOfTemplate"}
|
||||
{ TagPrefix="ShortNameOfTemplate" %> }
|
||||
{ 3. In the .aspx page find the tags for different scheduler views within }
|
||||
{ the ASPxScheduler control tag. Insert template tags into the tags }
|
||||
{ for the views which should be customized. }
|
||||
{ The template tag should satisfy the following pattern: }
|
||||
{ <Templates> }
|
||||
{ <HorizontalAppointmentTemplate> }
|
||||
{ < ShortNameOfTemplate: NameOfTemplate runat="server"/> }
|
||||
{ </HorizontalAppointmentTemplate> }
|
||||
{ </Templates> }
|
||||
{ where ShortNameOfTemplate, NameOfTemplate are the names of the }
|
||||
{ registered templates, defined in step 2. }
|
||||
{************************************************************************************}
|
||||
--%>
|
||||
<%@ Control Language="vb" AutoEventWireup="true" Inherits="HorizontalAppointmentTemplate" Codebehind="HorizontalAppointmentTemplate.ascx.vb" %>
|
||||
<%@ Register Assembly="DevExpress.Web.ASPxScheduler.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxScheduler" TagPrefix="dxwschs" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web" TagPrefix="dxe" %>
|
||||
<div id="appointmentDiv" runat="server" class='<%#(CType(Container, HorizontalAppointmentTemplateContainer)).Items.AppointmentStyle.CssClass%>'>
|
||||
<table style="width:100%; height:100%;" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td runat="server" id="statusContainer" valign="top">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<table cellpadding="0" cellspacing="0" style="width:100%; padding-bottom:2px; padding-top:2px; padding-left:1px; padding-right:1px;">
|
||||
<tr valign="middle" align="left">
|
||||
<td>
|
||||
<asp:Image runat="server" ID="imgStartContinueArrow" Visible='<%#(CType(Container, HorizontalAppointmentTemplateContainer)).Items.StartContinueArrow.Visible%>'></asp:Image>
|
||||
</td>
|
||||
<td>
|
||||
<dxe:ASPxLabel runat="server" EnableViewState="false" EncodeHtml="true" ID="lblStartContinueText" Text='<%#(CType(Container, HorizontalAppointmentTemplateContainer)).Items.StartContinueText.Text%>' Visible='<%#(CType(Container, HorizontalAppointmentTemplateContainer)).Items.StartContinueText.Visible%>'> </dxe:ASPxLabel>
|
||||
</td>
|
||||
<td runat="server" id="startTimeClockContainer"> </td>
|
||||
<td>
|
||||
<dxe:ASPxLabel runat="server" EnableViewState="false" EncodeHtml="true" ID="lblStartTime" Text='<%#(CType(Container, HorizontalAppointmentTemplateContainer)).Items.StartTimeText.Text%>' Visible='<%#(CType(Container, HorizontalAppointmentTemplateContainer)).Items.StartTimeText.Visible%>' ></dxe:ASPxLabel>
|
||||
</td>
|
||||
<td style="width: 100%;" align="center">
|
||||
<table cellpadding="1" cellspacing="1" style="vertical-align: middle;">
|
||||
<tr>
|
||||
<td>
|
||||
<table id="imageContainer" runat="server" cellpadding="0" cellspacing="0" style="vertical-align: middle;">
|
||||
</table>
|
||||
</td>
|
||||
<td align="center">
|
||||
<dxe:ASPxLabel runat="server" EnableViewState="false" EncodeHtml="true" ID="lblTitle" Text='<%#(CType(Container, HorizontalAppointmentTemplateContainer)).Items.Title.Text%>'></dxe:ASPxLabel>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td runat="server" id="endTimeClockContainer">
|
||||
</td>
|
||||
<td>
|
||||
<dxe:ASPxLabel runat="server" EnableViewState="false" EncodeHtml="true" ID="lblEndTime" Text='<%#(CType(Container, HorizontalAppointmentTemplateContainer)).Items.EndTimeText.Text%>' Visible='<%#(CType(Container, HorizontalAppointmentTemplateContainer)).Items.EndTimeText.Visible%>' ></dxe:ASPxLabel>
|
||||
</td>
|
||||
<td>
|
||||
<dxe:ASPxLabel runat="server" EnableViewState="false" EncodeHtml="true" ID="lblEndContinueText" Text='<%#(CType(Container, HorizontalAppointmentTemplateContainer)).Items.EndContinueText.Text%>' Visible='<%#(CType(Container, HorizontalAppointmentTemplateContainer)).Items.EndContinueText.Visible%>'></dxe:ASPxLabel>
|
||||
</td>
|
||||
<td>
|
||||
<asp:Image runat="server" ID="imgEndContinueArrow" Visible='<%#(CType(Container, HorizontalAppointmentTemplateContainer)).Items.EndContinueArrow.Visible%>'></asp:Image>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
@@ -0,0 +1,123 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class HorizontalAppointmentTemplate
|
||||
|
||||
'''<summary>
|
||||
'''appointmentDiv control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents appointmentDiv As Global.System.Web.UI.HtmlControls.HtmlGenericControl
|
||||
|
||||
'''<summary>
|
||||
'''statusContainer control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents statusContainer As Global.System.Web.UI.HtmlControls.HtmlTableCell
|
||||
|
||||
'''<summary>
|
||||
'''imgStartContinueArrow control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents imgStartContinueArrow As Global.System.Web.UI.WebControls.Image
|
||||
|
||||
'''<summary>
|
||||
'''lblStartContinueText control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblStartContinueText As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''startTimeClockContainer control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents startTimeClockContainer As Global.System.Web.UI.HtmlControls.HtmlTableCell
|
||||
|
||||
'''<summary>
|
||||
'''lblStartTime control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblStartTime As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''imageContainer control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents imageContainer As Global.System.Web.UI.HtmlControls.HtmlTable
|
||||
|
||||
'''<summary>
|
||||
'''lblTitle control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblTitle As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''endTimeClockContainer control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents endTimeClockContainer As Global.System.Web.UI.HtmlControls.HtmlTableCell
|
||||
|
||||
'''<summary>
|
||||
'''lblEndTime control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblEndTime As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''lblEndContinueText control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblEndContinueText As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''imgEndContinueArrow control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents imgEndContinueArrow As Global.System.Web.UI.WebControls.Image
|
||||
End Class
|
||||
@@ -0,0 +1,87 @@
|
||||
'
|
||||
'{************************************************************************************}
|
||||
'{ }
|
||||
'{ DO NOT MODIFY THIS FILE! }
|
||||
'{ }
|
||||
'{ It will be overwritten without prompting when a new version becomes }
|
||||
'{ available. All your changes will be lost. }
|
||||
'{ }
|
||||
'{ This file contains the default template and is required for the appointment }
|
||||
'{ rendering. Improper modifications may result in incorrect appearance of the }
|
||||
'{ appointment. }
|
||||
'{ }
|
||||
'{ In order to create and use your own custom template, perform the following }
|
||||
'{ steps: }
|
||||
'{ 1. Save a copy of this file with a different name in another location. }
|
||||
'{ 2. Add a Register tag in the .aspx page header for each template you use, }
|
||||
'{ as follows: <%@ Register Src="PathToTemplateFile" TagName="NameOfTemplate"}
|
||||
'{ TagPrefix="ShortNameOfTemplate" %> }
|
||||
'{ 3. In the .aspx page find the tags for different scheduler views within }
|
||||
'{ the ASPxScheduler control tag. Insert template tags into the tags }
|
||||
'{ for the views which should be customized. }
|
||||
'{ The template tag should satisfy the following pattern: }
|
||||
'{ <Templates> }
|
||||
'{ <HorizontalAppointmentTemplate> }
|
||||
'{ < ShortNameOfTemplate: NameOfTemplate runat="server"/> }
|
||||
'{ </HorizontalAppointmentTemplate> }
|
||||
'{ </Templates> }
|
||||
'{ where ShortNameOfTemplate, NameOfTemplate are the names of the }
|
||||
'{ registered templates, defined in step 2. }
|
||||
'{************************************************************************************}
|
||||
'
|
||||
|
||||
|
||||
Imports Microsoft.VisualBasic
|
||||
Imports System
|
||||
Imports System.Web.UI.WebControls
|
||||
Imports System.Web.UI.HtmlControls
|
||||
Imports DevExpress.Web.ASPxScheduler
|
||||
Imports DevExpress.Web.ASPxScheduler.Drawing
|
||||
|
||||
Partial Public Class HorizontalAppointmentTemplate
|
||||
Inherits System.Web.UI.UserControl
|
||||
Private ReadOnly Property Container() As HorizontalAppointmentTemplateContainer
|
||||
Get
|
||||
Return CType(Parent, HorizontalAppointmentTemplateContainer)
|
||||
End Get
|
||||
End Property
|
||||
Private ReadOnly Property Items() As HorizontalAppointmentTemplateItems
|
||||
Get
|
||||
Return Container.Items
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
|
||||
appointmentDiv.Style.Value = Items.AppointmentStyle.GetStyleAttributes(Page).Value
|
||||
|
||||
lblTitle.ControlStyle.MergeWith(Items.Title.Style)
|
||||
lblStartContinueText.ControlStyle.MergeWith(Items.StartContinueText.Style)
|
||||
lblEndContinueText.ControlStyle.MergeWith(Items.EndContinueText.Style)
|
||||
|
||||
LayoutAppointmentImages()
|
||||
|
||||
statusContainer.Controls.Add(Items.StatusControl)
|
||||
startTimeClockContainer.Controls.Add(Items.StartTimeClock)
|
||||
endTimeClockContainer.Controls.Add(Items.EndTimeClock)
|
||||
End Sub
|
||||
Private Sub LayoutAppointmentImages()
|
||||
Dim count As Integer = Items.Images.Count
|
||||
Dim row As New HtmlTableRow()
|
||||
row.Cells.Add(New HtmlTableCell())
|
||||
For i As Integer = 0 To count - 1
|
||||
Dim cell As New HtmlTableCell()
|
||||
AddImage(cell, Items.Images(i))
|
||||
row.Cells.Add(cell)
|
||||
Next i
|
||||
imageContainer.Rows.Add(row)
|
||||
|
||||
Items.StartContinueArrow.ImageProperties.AssignToControl(imgStartContinueArrow, False)
|
||||
Items.EndContinueArrow.ImageProperties.AssignToControl(imgEndContinueArrow, False)
|
||||
End Sub
|
||||
Private Sub AddImage(ByVal targetCell As HtmlTableCell, ByVal imageItem As AppointmentImageItem)
|
||||
Dim image As New Image()
|
||||
imageItem.ImageProperties.AssignToControl(image, False)
|
||||
targetCell.Controls.Add(image)
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
@@ -0,0 +1,67 @@
|
||||
<%--
|
||||
{************************************************************************************}
|
||||
{ }
|
||||
{ DO NOT MODIFY THIS FILE! }
|
||||
{ }
|
||||
{ It will be overwritten without prompting when a new version becomes }
|
||||
{ available. All your changes will be lost. }
|
||||
{ }
|
||||
{ This file contains the default template and is required for the appointment }
|
||||
{ rendering. Improper modifications may result in incorrect appearance of the }
|
||||
{ appointment. }
|
||||
{ }
|
||||
{ In order to create and use your own custom template, perform the following }
|
||||
{ steps: }
|
||||
{ 1. Save a copy of this file with a different name in another location. }
|
||||
{ 2. Add a Register tag in the .aspx page header for each template you use, }
|
||||
{ as follows: <%@ Register Src="PathToTemplateFile" TagName="NameOfTemplate"}
|
||||
{ TagPrefix="ShortNameOfTemplate" %> }
|
||||
{ 3. In the .aspx page find the tags for different scheduler views within }
|
||||
{ the ASPxScheduler control tag. Insert template tags into the tags }
|
||||
{ for the views which should be customized. }
|
||||
{ The template tag should satisfy the following pattern: }
|
||||
{ <Templates> }
|
||||
{ <HorizontalSameDayAppointmentTemplate> }
|
||||
{ <ShortNameOfTemplate: NameOfTemplate runat="server"/> }
|
||||
{ </HorizontalSameDayAppointmentTemplate> }
|
||||
{ </Templates> }
|
||||
{ where ShortNameOfTemplate, NameOfTemplate are the names of the }
|
||||
{ registered templates, defined in step 2. }
|
||||
{************************************************************************************}
|
||||
--%>
|
||||
<%@ Control Language="vb" AutoEventWireup="true" Inherits="HorizontalSameDayAppointmentTemplate" Codebehind="HorizontalSameDayAppointmentTemplate.ascx.vb" %>
|
||||
<%@ Register Assembly="DevExpress.Web.ASPxScheduler.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxScheduler" TagPrefix="dxwschs" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web" TagPrefix="dxe" %>
|
||||
<div id="appointmentDiv" runat="server" class='<%#(CType(Container, HorizontalAppointmentTemplateContainer)).Items.AppointmentStyle.CssClass%>'>
|
||||
<table width="100%" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td runat="server" id="statusContainer" valign="top">
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<table cellpadding="1" cellspacing="0" width="100%">
|
||||
<tr valign="middle" align="left">
|
||||
<td runat="server" id="startTimeClockContainer">
|
||||
</td>
|
||||
<td>
|
||||
<dxe:ASPxLabel runat="server" EnableViewState="false" EncodeHtml="true" ID="lblStartTime" Text='<%#(CType(Container, HorizontalAppointmentTemplateContainer)).Items.StartTimeText.Text%>' Visible='<%#(CType(Container, HorizontalAppointmentTemplateContainer)).Items.StartTimeText.Visible%>'></dxe:ASPxLabel>
|
||||
</td>
|
||||
<td runat="server" id="endTimeClockContainer">
|
||||
</td>
|
||||
<td>
|
||||
<dxe:ASPxLabel runat="server" EnableViewState="false" EncodeHtml="true" ID="lblEndTime" Text='<%#(CType(Container, HorizontalAppointmentTemplateContainer)).Items.EndTimeText.Text%>' Visible='<%#(CType(Container, HorizontalAppointmentTemplateContainer)).Items.EndTimeText.Visible%>'></dxe:ASPxLabel>
|
||||
</td>
|
||||
<td>
|
||||
<table id="imageContainer" runat="server" cellpadding="1" cellspacing="0" style="vertical-align: middle;">
|
||||
</table>
|
||||
</td>
|
||||
<td style="width: 100%">
|
||||
<dxe:ASPxLabel runat="server" EnableViewState="false" EncodeHtml="true" ID="lblTitle" Text='<%#(CType(Container, HorizontalAppointmentTemplateContainer)).Items.Title.Text%>'> </dxe:ASPxLabel>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
@@ -0,0 +1,87 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class HorizontalSameDayAppointmentTemplate
|
||||
|
||||
'''<summary>
|
||||
'''appointmentDiv control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents appointmentDiv As Global.System.Web.UI.HtmlControls.HtmlGenericControl
|
||||
|
||||
'''<summary>
|
||||
'''statusContainer control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents statusContainer As Global.System.Web.UI.HtmlControls.HtmlTableCell
|
||||
|
||||
'''<summary>
|
||||
'''startTimeClockContainer control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents startTimeClockContainer As Global.System.Web.UI.HtmlControls.HtmlTableCell
|
||||
|
||||
'''<summary>
|
||||
'''lblStartTime control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblStartTime As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''endTimeClockContainer control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents endTimeClockContainer As Global.System.Web.UI.HtmlControls.HtmlTableCell
|
||||
|
||||
'''<summary>
|
||||
'''lblEndTime control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblEndTime As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''imageContainer control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents imageContainer As Global.System.Web.UI.HtmlControls.HtmlTable
|
||||
|
||||
'''<summary>
|
||||
'''lblTitle control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblTitle As Global.DevExpress.Web.ASPxLabel
|
||||
End Class
|
||||
@@ -0,0 +1,84 @@
|
||||
'
|
||||
'{************************************************************************************}
|
||||
'{ }
|
||||
'{ DO NOT MODIFY THIS FILE! }
|
||||
'{ }
|
||||
'{ It will be overwritten without prompting when a new version becomes }
|
||||
'{ available. All your changes will be lost. }
|
||||
'{ }
|
||||
'{ This file contains the default template and is required for the appointment }
|
||||
'{ rendering. Improper modifications may result in incorrect appearance of the }
|
||||
'{ appointment. }
|
||||
'{ }
|
||||
'{ In order to create and use your own custom template, perform the following }
|
||||
'{ steps: }
|
||||
'{ 1. Save a copy of this file with a different name in another location. }
|
||||
'{ 2. Add a Register tag in the .aspx page header for each template you use, }
|
||||
'{ as follows: <%@ Register Src="PathToTemplateFile" TagName="NameOfTemplate"}
|
||||
'{ TagPrefix="ShortNameOfTemplate" %> }
|
||||
'{ 3. In the .aspx page find the tags for different scheduler views within }
|
||||
'{ the ASPxScheduler control tag. Insert template tags into the tags }
|
||||
'{ for the views which should be customized. }
|
||||
'{ The template tag should satisfy the following pattern: }
|
||||
'{ <Templates> }
|
||||
'{ <HorizontalSameDayAppointmentTemplate> }
|
||||
'{ < ShortNameOfTemplate: NameOfTemplate runat="server"/> }
|
||||
'{ </HorizontalSameDayAppointmentTemplate> }
|
||||
'{ </Templates> }
|
||||
'{ where ShortNameOfTemplate, NameOfTemplate are the names of the }
|
||||
'{ registered templates, defined in step 2. }
|
||||
'{************************************************************************************}
|
||||
'
|
||||
|
||||
|
||||
Imports Microsoft.VisualBasic
|
||||
Imports System
|
||||
Imports System.Web.UI.WebControls
|
||||
Imports System.Web.UI.HtmlControls
|
||||
Imports DevExpress.Web.ASPxScheduler
|
||||
Imports DevExpress.Web.ASPxScheduler.Drawing
|
||||
|
||||
Partial Public Class HorizontalSameDayAppointmentTemplate
|
||||
Inherits System.Web.UI.UserControl
|
||||
Private ReadOnly Property Container() As HorizontalAppointmentTemplateContainer
|
||||
Get
|
||||
Return CType(Parent, HorizontalAppointmentTemplateContainer)
|
||||
End Get
|
||||
End Property
|
||||
Private ReadOnly Property Items() As HorizontalAppointmentTemplateItems
|
||||
Get
|
||||
Return Container.Items
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
|
||||
appointmentDiv.Style.Value = Items.AppointmentStyle.GetStyleAttributes(Page).Value
|
||||
|
||||
lblStartTime.ControlStyle.MergeWith(Items.StartTimeText.Style)
|
||||
lblEndTime.ControlStyle.MergeWith(Items.EndTimeText.Style)
|
||||
lblTitle.ControlStyle.MergeWith(Items.Title.Style)
|
||||
|
||||
LayoutAppointmentImages()
|
||||
|
||||
statusContainer.Controls.Add(Container.Items.StatusControl)
|
||||
startTimeClockContainer.Controls.Add(Container.Items.StartTimeClock)
|
||||
endTimeClockContainer.Controls.Add(Container.Items.EndTimeClock)
|
||||
End Sub
|
||||
Private Sub LayoutAppointmentImages()
|
||||
Dim count As Integer = Items.Images.Count
|
||||
Dim row As New HtmlTableRow()
|
||||
row.Cells.Add(New HtmlTableCell())
|
||||
For i As Integer = 0 To count - 1
|
||||
Dim cell As New HtmlTableCell()
|
||||
AddImage(cell, Items.Images(i))
|
||||
row.Cells.Add(cell)
|
||||
Next i
|
||||
imageContainer.Rows.Add(row)
|
||||
End Sub
|
||||
Private Sub AddImage(ByVal targetCell As HtmlTableCell, ByVal imageItem As AppointmentImageItem)
|
||||
Dim image As New Image()
|
||||
imageItem.ImageProperties.AssignToControl(image, False)
|
||||
targetCell.Controls.Add(image)
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
@@ -0,0 +1,80 @@
|
||||
<%--
|
||||
{************************************************************************************}
|
||||
{ }
|
||||
{ DO NOT MODIFY THIS FILE! }
|
||||
{ }
|
||||
{ It will be overwritten without prompting when a new version becomes }
|
||||
{ available. All your changes will be lost. }
|
||||
{ }
|
||||
{ This file contains the default template and is required for the form }
|
||||
{ rendering. Improper modifications may result in incorrect behavior of }
|
||||
{ the appointment form. }
|
||||
{ }
|
||||
{ In order to create and use your own custom template, perform the following }
|
||||
{ steps: }
|
||||
{ 1. Save a copy of this file with a different name in another location. }
|
||||
{ 2. Specify the file location as the }
|
||||
{ 'OptionsForms.AppointmentInplaceEditorFormTemplateUrl' }
|
||||
{ property of the ASPxScheduler control. }
|
||||
{ 3. If you need custom fields to be displayed and processed, you should }
|
||||
{ accomplish steps 4-9; otherwise, go to step 10. }
|
||||
{ 4. Create a class, derived from the }
|
||||
{ AppointmentInplaceEditorTemplateContainer, containing custom properties. }
|
||||
{ This class definition can be located within a class file in the App_Code }
|
||||
{ folder. }
|
||||
{ 5. Replace AppointmentInplaceEditorTemplateContainer references in the }
|
||||
{ template page with the name of the class you've created in step 4. }
|
||||
{ 6. Handle the AppointmentInplaceEditorFormShowing event to create an }
|
||||
{ instance of the template container class, defined in step 4, and specify }
|
||||
{ it as the destination container instead of the default one. }
|
||||
{ 7. Define a class, which inherits from the }
|
||||
{ DevExpress.Web.ASPxScheduler.Internal.AppointmentFormController. }
|
||||
{ This class provides data exchange between the form and the appointment. }
|
||||
{ You should override ApplyCustomFieldsValues() method of the base class. }
|
||||
{ 8. Define a class, which inherits from the }
|
||||
{ DevExpress.Web.ASPxScheduler.Internal.AppointmentFormSaveCallbackCommand. }
|
||||
{ This class creates an instance of the AppointmentFormController inheritor }
|
||||
{ (defined in step 7) via the CreateAppointmentFormController method and }
|
||||
{ overrides the AssignControllerValues method of the base class to collect }
|
||||
{ user data from the form's editors. }
|
||||
{ 9. Handle the BeforeExecuteCallbackCommand event. The event handler code }
|
||||
{ should create an instance of the class defined in step 8, and specify it }
|
||||
{ as the destination command instead of the default one. }
|
||||
{ 10. Modify the overall appearance of the page and its layout. }
|
||||
{ }
|
||||
{************************************************************************************}--%>
|
||||
|
||||
<%@ Control Language="vb" AutoEventWireup="true" Inherits="InplaceEditor" Codebehind="InplaceEditor.ascx.vb" %>
|
||||
<%@ Register Assembly="DevExpress.Web.ASPxScheduler.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxScheduler" TagPrefix="dxwschs" %>
|
||||
<%@ Register Assembly="DevExpress.Web.ASPxScheduler.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxScheduler.Controls"
|
||||
TagPrefix="cc1" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web"
|
||||
TagPrefix="dxe" %>
|
||||
<table cellpadding="2"; cellspacing="0" style="width:100%; height:100%">
|
||||
<tr>
|
||||
<td style="width:100%" >
|
||||
<dxe:ASPxMemo ClientInstanceName="_dx" ID="memSubject" runat="server" Width="100%" Rows="5" Text='<%#(CType(Container, AppointmentInplaceEditorTemplateContainer)).Appointment.Subject%>'>
|
||||
</dxe:ASPxMemo>
|
||||
</td>
|
||||
<td valign="top" >
|
||||
|
||||
<div>
|
||||
<cc1:NoBorderButton runat="server" ClientInstanceName="_dx" ID="btnSave" Width="19px" Height="19px" ToolTip="Save"
|
||||
Image-IsResourcePng="True">
|
||||
</cc1:NoBorderButton>
|
||||
</div>
|
||||
|
||||
<div style="padding-top:1px;">
|
||||
<cc1:NoBorderButton runat="server" ClientInstanceName="_dx" ID="btnCancel" Width="19px" Height="19px" ToolTip="Cancel"
|
||||
CausesValidation="False" Image-IsResourcePng="True">
|
||||
</cc1:NoBorderButton>
|
||||
</div>
|
||||
|
||||
<div style="padding-top:6px;">
|
||||
<cc1:NoBorderButton runat="server" ClientInstanceName="_dx" ID="btnEditForm" Width="19px" Height="19px" ToolTip="Open Edit Form..."
|
||||
CausesValidation="False" Image-IsResourcePng="True">
|
||||
</cc1:NoBorderButton>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
@@ -0,0 +1,51 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class InplaceEditor
|
||||
|
||||
'''<summary>
|
||||
'''memSubject control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents memSubject As Global.DevExpress.Web.ASPxMemo
|
||||
|
||||
'''<summary>
|
||||
'''btnSave control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnSave As Global.DevExpress.Web.ASPxScheduler.Controls.NoBorderButton
|
||||
|
||||
'''<summary>
|
||||
'''btnCancel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnCancel As Global.DevExpress.Web.ASPxScheduler.Controls.NoBorderButton
|
||||
|
||||
'''<summary>
|
||||
'''btnEditForm control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnEditForm As Global.DevExpress.Web.ASPxScheduler.Controls.NoBorderButton
|
||||
End Class
|
||||
@@ -0,0 +1,82 @@
|
||||
'
|
||||
'{************************************************************************************}
|
||||
'{ }
|
||||
'{ DO NOT MODIFY THIS FILE! }
|
||||
'{ }
|
||||
'{ It will be overwritten without prompting when a new version becomes }
|
||||
'{ available. All your changes will be lost. }
|
||||
'{ }
|
||||
'{ This file contains the default template and is required for the form }
|
||||
'{ rendering. Improper modifications may result in incorrect behavior of }
|
||||
'{ the appointment form. }
|
||||
'{ }
|
||||
'{ In order to create and use your own custom template, perform the following }
|
||||
'{ steps: }
|
||||
'{ 1. Save a copy of this file with a different name in another location. }
|
||||
'{ 2. Specify the file location as the }
|
||||
'{ 'OptionsForms.AppointmentInplaceEditorFormTemplateUrl' }
|
||||
'{ property of the ASPxScheduler control. }
|
||||
'{ 3. If you need custom fields to be displayed and processed, you should }
|
||||
'{ accomplish steps 4-9; otherwise, go to step 10. }
|
||||
'{ 4. Create a class, derived from the }
|
||||
'{ AppointmentInplaceEditorTemplateContainer, containing custom properties. }
|
||||
'{ This class definition can be located within a class file in the App_Code }
|
||||
'{ folder. }
|
||||
'{ 5. Replace AppointmentInplaceEditorTemplateContainer references in the }
|
||||
'{ template page with the name of the class you've created in step 4. }
|
||||
'{ 6. Handle the AppointmentInplaceEditorFormShowing event to create an }
|
||||
'{ instance of the template container class, defined in step 4, and specify }
|
||||
'{ it as the destination container instead of the default one. }
|
||||
'{ 7. Define a class, which inherits from the }
|
||||
'{ DevExpress.Web.ASPxScheduler.Internal.AppointmentFormController. }
|
||||
'{ This class provides data exchange between the form and the appointment. }
|
||||
'{ You should override ApplyCustomFieldsValues() method of the base class. }
|
||||
'{ 8. Define a class, which inherits from the }
|
||||
'{ DevExpress.Web.ASPxScheduler.Internal.AppointmentFormSaveCallbackCommand. }
|
||||
'{ This class creates an instance of the AppointmentFormController inheritor }
|
||||
'{ (defined in step 7) via the CreateAppointmentFormController method and }
|
||||
'{ overrides the AssignControllerValues method of the base class to collect }
|
||||
'{ user data from the form's editors. }
|
||||
'{ 9. Handle the BeforeExecuteCallbackCommand event. The event handler code }
|
||||
'{ should create an instance of the class defined in step 8, and specify it }
|
||||
'{ as the destination command instead of the default one. }
|
||||
'{ 10. Modify the overall appearance of the page and its layout. }
|
||||
'{ }
|
||||
'{************************************************************************************}
|
||||
'
|
||||
|
||||
|
||||
Imports Microsoft.VisualBasic
|
||||
Imports System
|
||||
Imports DevExpress.Web.ASPxScheduler
|
||||
Imports DevExpress.Web
|
||||
Imports DevExpress.Web.Internal
|
||||
|
||||
Partial Public Class InplaceEditor
|
||||
Inherits InplaceEditorBaseFormControl
|
||||
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
|
||||
'PrepareChildControls();
|
||||
memSubject.Focus()
|
||||
|
||||
End Sub
|
||||
Public Overrides Sub DataBind()
|
||||
MyBase.DataBind()
|
||||
Dim container As AppointmentInplaceEditorTemplateContainer = CType(Parent, AppointmentInplaceEditorTemplateContainer)
|
||||
|
||||
btnCancel.Image.Assign(container.Control.Images.GetInplaceEditorCancelImage(Page))
|
||||
btnSave.Image.Assign(container.Control.Images.GetInplaceEditorSaveImage(Page))
|
||||
btnEditForm.Image.Assign(container.Control.Images.GetInplaceEditorEditFormImage(Page))
|
||||
|
||||
btnSave.ClientSideEvents.Click = container.SaveHandler
|
||||
btnCancel.ClientSideEvents.Click = container.CancelHandler
|
||||
btnEditForm.ClientSideEvents.Click = container.EditFormHandler
|
||||
End Sub
|
||||
Protected Overrides Function GetChildEditors() As ASPxEditBase()
|
||||
Dim edits() As ASPxEditBase = { memSubject }
|
||||
Return edits
|
||||
End Function
|
||||
Protected Overrides Function GetChildButtons() As ASPxButton()
|
||||
Dim buttons() As ASPxButton = { btnSave, btnCancel, btnEditForm }
|
||||
Return buttons
|
||||
End Function
|
||||
End Class
|
||||
@@ -0,0 +1,75 @@
|
||||
<%--
|
||||
{************************************************************************************}
|
||||
{ }
|
||||
{ DO NOT MODIFY THIS FILE! }
|
||||
{ }
|
||||
{ It will be overwritten without prompting when a new version becomes }
|
||||
{ available. All your changes will be lost. }
|
||||
{ }
|
||||
{ This file contains the default template and is required for the form }
|
||||
{ rendering. Improper modifications may result in incorrect behavior of }
|
||||
{ the appointment form. }
|
||||
{ }
|
||||
{ In order to create and use your own custom template, perform the following }
|
||||
{ steps: }
|
||||
{ 1. Save a copy of this file with a different name in another location. }
|
||||
{ 2. Specify the file location as the }
|
||||
{ 'OptionsForms.RecurrentAppointmentDeleteFormTemplateUrl' }
|
||||
{ property of the ASPxScheduler control. }
|
||||
{ 3. If you need to display and process additional controls, you }
|
||||
{ should accomplish steps 4-6; otherwise, go to step 7. }
|
||||
{ 4. Create a class, derived from the }
|
||||
{ RecurrentAppointmentDeleteFormTemplateContainer, }
|
||||
{ containing additional properties which correspond to your controls. }
|
||||
{ This class definition can be located within a class file in the App_Code }
|
||||
{ folder. }
|
||||
{ 5. Replace RecurrentAppointmentDeleteFormTemplateContainer references in the }
|
||||
{ template page with the name of the class you've created in step 4. }
|
||||
{ 6. Handle the RecurrentAppointmentDeleteFormShowing event to create an }
|
||||
{ instance of the template container class, defined in step 5, and specify }
|
||||
{ it as the destination container instead of the default one. }
|
||||
{ 7. Modify the overall appearance of the page and its layout. }
|
||||
{ }
|
||||
{************************************************************************************}
|
||||
--%>
|
||||
<%@ Control Language="vb" AutoEventWireup="true" Inherits="RecurrentAppointmentDeleteForm" Codebehind="RecurrentAppointmentDeleteForm.ascx.vb" %>
|
||||
<%@ Register Assembly="DevExpress.Web.ASPxScheduler.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxScheduler" TagPrefix="dxwschs" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web" TagPrefix="dxe" %>
|
||||
|
||||
<table style="width:100%; height:100%">
|
||||
<tr>
|
||||
<td rowspan="2" style="vertical-align:top;">
|
||||
<dxe:ASPxImage id="imgWarning" runat="server" EnableViewState="False">
|
||||
</dxe:ASPxImage>
|
||||
</td>
|
||||
<td style="width:100%;">
|
||||
<dxe:ASPxLabel ID="lblConfirm" runat="server" Text='<%#"Do you want to delete all occurrences of the recurring appointment """ & (CType(Container, DevExpress.Web.ASPxScheduler.RecurrentAppointmentDeleteFormTemplateContainer)).Appointment.Subject & """, or just this one?"%>'/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="width:100%;">
|
||||
<dxe:ASPxRadioButtonList ID="rbAction" runat="server" ValueType="System.Int32" SelectedIndex="0">
|
||||
<Border BorderStyle="None" />
|
||||
<Items>
|
||||
<dxe:ListEditItem Text="The series" Value="1" />
|
||||
<dxe:ListEditItem Text="This occurrence" Value="2" />
|
||||
</Items>
|
||||
</dxe:ASPxRadioButtonList>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center" style="width:100%" colspan="2">
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxButton ID="btnOk" ClientInstanceName="_dx" runat="server" Text="OK" UseSubmitBehavior="false" AutoPostBack="false" EnableViewState="false" Width="91px" />
|
||||
</td>
|
||||
<td>
|
||||
<dxe:ASPxButton ID="btnCancel" ClientInstanceName="_dx" runat="server" Text="Cancel" UseSubmitBehavior="false" AutoPostBack="false" EnableViewState="false"
|
||||
Width="91px" CausesValidation="False" />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
@@ -0,0 +1,60 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class RecurrentAppointmentDeleteForm
|
||||
|
||||
'''<summary>
|
||||
'''imgWarning control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents imgWarning As Global.DevExpress.Web.ASPxImage
|
||||
|
||||
'''<summary>
|
||||
'''lblConfirm control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblConfirm As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''rbAction control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents rbAction As Global.DevExpress.Web.ASPxRadioButtonList
|
||||
|
||||
'''<summary>
|
||||
'''btnOk control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnOk As Global.DevExpress.Web.ASPxButton
|
||||
|
||||
'''<summary>
|
||||
'''btnCancel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnCancel As Global.DevExpress.Web.ASPxButton
|
||||
End Class
|
||||
@@ -0,0 +1,71 @@
|
||||
'
|
||||
'{************************************************************************************}
|
||||
'{ }
|
||||
'{ DO NOT MODIFY THIS FILE! }
|
||||
'{ }
|
||||
'{ It will be overwritten without prompting when a new version becomes }
|
||||
'{ available. All your changes will be lost. }
|
||||
'{ }
|
||||
'{ This file contains the default template and is required for the form }
|
||||
'{ rendering. Improper modifications may result in incorrect behavior of }
|
||||
'{ the appointment form. }
|
||||
'{ }
|
||||
'{ In order to create and use your own custom template, perform the following }
|
||||
'{ steps: }
|
||||
'{ 1. Save a copy of this file with a different name in another location. }
|
||||
'{ 2. Specify the file location as the }
|
||||
'{ 'OptionsForms.RecurrentAppointmentDeleteFormTemplateUrl' }
|
||||
'{ property of the ASPxScheduler control. }
|
||||
'{ 3. If you need to display and process additional controls, you }
|
||||
'{ should accomplish steps 4-6; otherwise, go to step 7. }
|
||||
'{ 4. Create a class, derived from the }
|
||||
'{ RecurrentAppointmentDeleteFormTemplateContainer, }
|
||||
'{ containing additional properties which correspond to your controls. }
|
||||
'{ This class definition can be located within a class file in the App_Code }
|
||||
'{ folder. }
|
||||
'{ 5. Replace RecurrentAppointmentDeleteFormTemplateContainer references in the }
|
||||
'{ template page with the name of the class you've created in step 4. }
|
||||
'{ 6. Handle the RecurrentAppointmentDeleteFormShowing event to create an }
|
||||
'{ instance of the template container class, defined in step 5, and specify }
|
||||
'{ it as the destination container instead of the default one. }
|
||||
'{ 7. Modify the overall appearance of the page and its layout. }
|
||||
'{ }
|
||||
'{************************************************************************************}
|
||||
'
|
||||
|
||||
|
||||
Imports Microsoft.VisualBasic
|
||||
Imports System
|
||||
Imports DevExpress.Web.ASPxScheduler
|
||||
Imports DevExpress.Web
|
||||
|
||||
|
||||
Partial Public Class RecurrentAppointmentDeleteForm
|
||||
Inherits SchedulerFormControl
|
||||
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
|
||||
End Sub
|
||||
Public Overrides Sub DataBind()
|
||||
MyBase.DataBind()
|
||||
Dim container As RecurrentAppointmentDeleteFormTemplateContainer = CType(Parent, RecurrentAppointmentDeleteFormTemplateContainer)
|
||||
Dim imageProperties As ImageProperties = container.Control.Images.GetWarningImage(Me.Page)
|
||||
AssignImageProperties(imgWarning, imageProperties)
|
||||
btnOk.ClientSideEvents.Click = container.ApplyHandler
|
||||
btnCancel.ClientSideEvents.Click = container.CancelHandler
|
||||
End Sub
|
||||
Private Sub AssignImageProperties(ByVal image As ASPxImage, ByVal imageProperties As ImageProperties)
|
||||
image.ImageUrl = EmptyImageProperties.GetGlobalEmptyImage(Me.Page).Url
|
||||
image.CssClass = imageProperties.SpriteProperties.CssClass
|
||||
image.Width = imageProperties.Width
|
||||
image.Height = imageProperties.Height
|
||||
image.SpriteLeft = imageProperties.SpriteProperties.Left
|
||||
image.SpriteTop = imageProperties.SpriteProperties.Top
|
||||
End Sub
|
||||
Protected Overrides Function GetChildEditors() As ASPxEditBase()
|
||||
Dim edits() As ASPxEditBase = { lblConfirm, rbAction }
|
||||
Return edits
|
||||
End Function
|
||||
Protected Overrides Function GetChildButtons() As ASPxButton()
|
||||
Dim buttons() As ASPxButton = { btnOk, btnCancel }
|
||||
Return buttons
|
||||
End Function
|
||||
End Class
|
||||
@@ -0,0 +1,75 @@
|
||||
<%--
|
||||
{************************************************************************************}
|
||||
{ }
|
||||
{ DO NOT MODIFY THIS FILE! }
|
||||
{ }
|
||||
{ It will be overwritten without prompting when a new version becomes }
|
||||
{ available. All your changes will be lost. }
|
||||
{ }
|
||||
{ This file contains the default template and is required for the form }
|
||||
{ rendering. Improper modifications may result in incorrect behavior of }
|
||||
{ the appointment form. }
|
||||
{ }
|
||||
{ In order to create and use your own custom template, perform the following }
|
||||
{ steps: }
|
||||
{ 1. Save a copy of this file with a different name in another location. }
|
||||
{ 2. Specify the file location as the }
|
||||
{ 'OptionsForms.RecurrentAppointmentEditFormTemplateUrl' }
|
||||
{ property of the ASPxScheduler control. }
|
||||
{ 3. If you need to display and process additional controls, you }
|
||||
{ should accomplish steps 4-6; otherwise, go to step 7. }
|
||||
{ 4. Create a class, derived from the }
|
||||
{ RecurrentAppointmentEditFormTemplateContainer, }
|
||||
{ containing additional properties which correspond to your controls. }
|
||||
{ This class definition can be located within a class file in the App_Code }
|
||||
{ folder. }
|
||||
{ 5. Replace RecurrentAppointmentEditFormTemplateContainer references in the }
|
||||
{ template page with the name of the class you've created in step 4. }
|
||||
{ 6. Handle the RecurrentAppointmentEditFormShowing event to create an }
|
||||
{ instance of the template container class, defined in step 5, and specify }
|
||||
{ it as the destination container instead of the default one. }
|
||||
{ 7. Modify the overall appearance of the page and its layout. }
|
||||
{ }
|
||||
{************************************************************************************}
|
||||
--%>
|
||||
<%@ Control Language="vb" AutoEventWireup="true" Inherits="RecurrentAppointmentEditForm" Codebehind="RecurrentAppointmentEditForm.ascx.vb" %>
|
||||
<%@ Register Assembly="DevExpress.Web.ASPxScheduler.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxScheduler" TagPrefix="dxwschs" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web" TagPrefix="dxe" %>
|
||||
|
||||
<table style="width:100%; height:100%">
|
||||
<tr>
|
||||
<td rowspan="2" style="vertical-align:top;">
|
||||
<dxe:ASPxImage id="Image" runat="server" EnableViewState="False" ImageUrl='<%#Page.ClientScript.GetWebResourceUrl(GetType(ASPxScheduler), "Images.StatusInfo.Info.png")%>' Width="48px" Height="48px" IsPng="true">
|
||||
</dxe:ASPxImage>
|
||||
</td>
|
||||
<td style="width:100%;">
|
||||
<dxe:ASPxLabel ID="lblConfirm" runat="server" Text='<%#"""" & (CType(Container, DevExpress.Web.ASPxScheduler.RecurrentAppointmentEditFormTemplateContainer)).Appointment.Subject & """ is a recurring appointment. Do you want to open only this occurrence or the series?"%>'/>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="width:100%;">
|
||||
<dxe:ASPxRadioButtonList ID="rbAction" runat="server" ValueType="System.Int32" SelectedIndex="0">
|
||||
<Border BorderStyle="None" />
|
||||
<Items>
|
||||
<dxe:ListEditItem Text="The series" Value="1" />
|
||||
<dxe:ListEditItem Text="This occurrence" Value="2" />
|
||||
</Items>
|
||||
</dxe:ASPxRadioButtonList>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center" style="width:100%" colspan="2">
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxButton ID="btnOk" ClientInstanceName="_dx" runat="server" Text="OK" UseSubmitBehavior="false" AutoPostBack="false" EnableViewState="false" Width="91px" />
|
||||
</td>
|
||||
<td>
|
||||
<dxe:ASPxButton ID="btnCancel" ClientInstanceName="_dx" runat="server" Text="Cancel" UseSubmitBehavior="false" AutoPostBack="false" EnableViewState="false"
|
||||
Width="91px" CausesValidation="False" />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
@@ -0,0 +1,60 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class RecurrentAppointmentEditForm
|
||||
|
||||
'''<summary>
|
||||
'''Image control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents Image As Global.DevExpress.Web.ASPxImage
|
||||
|
||||
'''<summary>
|
||||
'''lblConfirm control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblConfirm As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''rbAction control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents rbAction As Global.DevExpress.Web.ASPxRadioButtonList
|
||||
|
||||
'''<summary>
|
||||
'''btnOk control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnOk As Global.DevExpress.Web.ASPxButton
|
||||
|
||||
'''<summary>
|
||||
'''btnCancel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnCancel As Global.DevExpress.Web.ASPxButton
|
||||
End Class
|
||||
@@ -0,0 +1,64 @@
|
||||
'
|
||||
'{************************************************************************************}
|
||||
'{ }
|
||||
'{ DO NOT MODIFY THIS FILE! }
|
||||
'{ }
|
||||
'{ It will be overwritten without prompting when a new version becomes }
|
||||
'{ available. All your changes will be lost. }
|
||||
'{ }
|
||||
'{ This file contains the default template and is required for the form }
|
||||
'{ rendering. Improper modifications may result in incorrect behavior of }
|
||||
'{ the appointment form. }
|
||||
'{ }
|
||||
'{ In order to create and use your own custom template, perform the following }
|
||||
'{ steps: }
|
||||
'{ 1. Save a copy of this file with a different name in another location. }
|
||||
'{ 2. Specify the file location as the }
|
||||
'{ 'OptionsForms.RecurrentAppointmentEditFormTemplateUrl' }
|
||||
'{ property of the ASPxScheduler control. }
|
||||
'{ 3. If you need to display and process additional controls, you }
|
||||
'{ should accomplish steps 4-6; otherwise, go to step 7. }
|
||||
'{ 4. Create a class, derived from the }
|
||||
'{ RecurrentAppointmentEditFormTemplateContainer, }
|
||||
'{ containing additional properties which correspond to your controls. }
|
||||
'{ This class definition can be located within a class file in the App_Code }
|
||||
'{ folder. }
|
||||
'{ 5. Replace RecurrentAppointmentEditFormTemplateContainer references in the }
|
||||
'{ template page with the name of the class you've created in step 4. }
|
||||
'{ 6. Handle the RecurrentAppointmentEditFormShowing event to create an }
|
||||
'{ instance of the template container class, defined in step 5, and specify }
|
||||
'{ it as the destination container instead of the default one. }
|
||||
'{ 7. Modify the overall appearance of the page and its layout. }
|
||||
'{ }
|
||||
'{************************************************************************************}
|
||||
'
|
||||
|
||||
|
||||
Imports Microsoft.VisualBasic
|
||||
Imports System
|
||||
Imports DevExpress.Web.ASPxScheduler
|
||||
Imports DevExpress.Web
|
||||
|
||||
Partial Public Class RecurrentAppointmentEditForm
|
||||
Inherits SchedulerFormControl
|
||||
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
|
||||
'PrepareChildControls();
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub DataBind()
|
||||
MyBase.DataBind()
|
||||
|
||||
Dim container As RecurrentAppointmentEditFormTemplateContainer = CType(Parent, RecurrentAppointmentEditFormTemplateContainer)
|
||||
|
||||
btnOk.ClientSideEvents.Click = container.ApplyHandler
|
||||
btnCancel.ClientSideEvents.Click = container.CancelHandler
|
||||
End Sub
|
||||
Protected Overrides Function GetChildEditors() As ASPxEditBase()
|
||||
Dim edits() As ASPxEditBase = { lblConfirm, rbAction }
|
||||
Return edits
|
||||
End Function
|
||||
Protected Overrides Function GetChildButtons() As ASPxButton()
|
||||
Dim buttons() As ASPxButton = { btnOk, btnCancel }
|
||||
Return buttons
|
||||
End Function
|
||||
End Class
|
||||
@@ -0,0 +1,23 @@
|
||||
<%@ Control Language="vb" AutoEventWireup="true" Inherits="ReminderForm" Codebehind="ReminderForm.ascx.vb" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web"
|
||||
TagPrefix="dxe" %>
|
||||
|
||||
<table width="100%" cellpadding="0" cellspacing="0" style="padding-bottom:15px;">
|
||||
<tr><td>
|
||||
<dxe:ASPxListBox ID="lbItems" runat="server" Width="100%" style="padding-bottom:15px;"></dxe:ASPxListBox>
|
||||
</td></tr>
|
||||
</table>
|
||||
<table width="100%" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td style="width:100%;"><dxe:ASPxButton ID="btnDismissAll" runat="server" Text="Dismiss All" AutoPostBack="false"></dxe:ASPxButton></td>
|
||||
<td style="width:80px;" align="right"><dxe:ASPxButton ID="btnDismiss" runat="server" Text="Dismiss" Width="80px" AutoPostBack="false"></dxe:ASPxButton></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" style="padding:8px 0 4px 0;"><dxe:ASPxLabel ID="lblClickSnooze" runat="server" Text="Click Snooze to be reminded again in:"></dxe:ASPxLabel></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="width:100%;padding-right:20px;"><dxe:ASPxComboBox ID="cbSnooze" runat="server" Width="100%">
|
||||
</dxe:ASPxComboBox></td>
|
||||
<td style="width:80px;"><dxe:ASPxButton ID="btnSnooze" runat="server" Text="Snooze" Width="80px" AutoPostBack="false"></dxe:ASPxButton></td>
|
||||
</tr>
|
||||
</table>
|
||||
@@ -0,0 +1,69 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class ReminderForm
|
||||
|
||||
'''<summary>
|
||||
'''lbItems control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lbItems As Global.DevExpress.Web.ASPxListBox
|
||||
|
||||
'''<summary>
|
||||
'''btnDismissAll control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnDismissAll As Global.DevExpress.Web.ASPxButton
|
||||
|
||||
'''<summary>
|
||||
'''btnDismiss control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnDismiss As Global.DevExpress.Web.ASPxButton
|
||||
|
||||
'''<summary>
|
||||
'''lblClickSnooze control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblClickSnooze As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''cbSnooze control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents cbSnooze As Global.DevExpress.Web.ASPxComboBox
|
||||
|
||||
'''<summary>
|
||||
'''btnSnooze control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnSnooze As Global.DevExpress.Web.ASPxButton
|
||||
End Class
|
||||
@@ -0,0 +1,67 @@
|
||||
Imports Microsoft.VisualBasic
|
||||
Imports System
|
||||
Imports System.Data
|
||||
Imports System.Configuration
|
||||
Imports System.Collections
|
||||
Imports System.Web
|
||||
Imports System.Web.Security
|
||||
Imports System.Web.UI
|
||||
Imports System.Web.UI.WebControls
|
||||
Imports System.Web.UI.WebControls.WebParts
|
||||
Imports System.Web.UI.HtmlControls
|
||||
Imports DevExpress.Web.ASPxScheduler
|
||||
Imports DevExpress.XtraScheduler
|
||||
Imports DevExpress.Web.ASPxScheduler.Internal
|
||||
Imports DevExpress.Web
|
||||
Imports DevExpress.XtraScheduler.Native
|
||||
Imports DevExpress.XtraScheduler.Localization
|
||||
|
||||
Partial Public Class ReminderForm
|
||||
Inherits SchedulerFormControl
|
||||
Public Sub New()
|
||||
MyBase.New()
|
||||
End Sub
|
||||
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
|
||||
'PrepareChildControls();
|
||||
End Sub
|
||||
Public Overrides Sub DataBind()
|
||||
MyBase.DataBind()
|
||||
|
||||
Dim container As RemindersFormTemplateContainer = CType(Parent, RemindersFormTemplateContainer)
|
||||
|
||||
btnDismiss.ClientSideEvents.Click = container.DismissReminderHandler
|
||||
btnDismissAll.ClientSideEvents.Click = container.DismissAllRemindersHandler
|
||||
btnSnooze.ClientSideEvents.Click = container.SnoozeRemindersHandler
|
||||
|
||||
InitItemListBox(container)
|
||||
InitSnoozeCombo(container)
|
||||
End Sub
|
||||
Private Sub InitItemListBox(ByVal container As RemindersFormTemplateContainer)
|
||||
Dim reminders As ReminderCollection = container.Reminders
|
||||
Dim count As Integer = reminders.Count
|
||||
For i As Integer = 0 To count - 1
|
||||
Dim reminder As Reminder = reminders(i)
|
||||
Dim item As New ListEditItem(reminder.Subject, i)
|
||||
lbItems.Items.Add(item)
|
||||
Next i
|
||||
lbItems.SelectedIndex = 0
|
||||
End Sub
|
||||
Private Sub InitSnoozeCombo(ByVal container As RemindersFormTemplateContainer)
|
||||
cbSnooze.Items.Clear()
|
||||
Dim timeSpans() As TimeSpan = container.SnoozeTimeSpans
|
||||
Dim count As Integer = timeSpans.Length
|
||||
For i As Integer = 0 To count - 1
|
||||
Dim timeSpan As TimeSpan = timeSpans(i)
|
||||
cbSnooze.Items.Add(New ListEditItem(container.ConvertSnoozeTimeSpanToString(timeSpan), timeSpan))
|
||||
Next i
|
||||
cbSnooze.SelectedIndex = 4
|
||||
End Sub
|
||||
Protected Overrides Function GetChildEditors() As ASPxEditBase()
|
||||
Dim edits() As ASPxEditBase = { lbItems, lblClickSnooze, cbSnooze }
|
||||
Return edits
|
||||
End Function
|
||||
Protected Overrides Function GetChildButtons() As ASPxButton()
|
||||
Dim buttons() As ASPxButton = { btnDismissAll, btnDismiss, btnSnooze }
|
||||
Return buttons
|
||||
End Function
|
||||
End Class
|
||||
@@ -0,0 +1,21 @@
|
||||
<%@ Control Language="vb" AutoEventWireup="true" Inherits="UserForms_SelectionToolTip" Codebehind="SelectionToolTip.ascx.vb" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2" Namespace="DevExpress.Web"
|
||||
TagPrefix="dxe" %>
|
||||
<div runat="server" id="buttonDiv">
|
||||
<dxe:ASPxButton ID="btnShowMenu" runat="server" AutoPostBack="False" AllowFocus="False">
|
||||
<Border BorderWidth="0px" />
|
||||
<Paddings Padding="0px" />
|
||||
<FocusRectPaddings Padding="4px" />
|
||||
<FocusRectBorder BorderStyle="None" BorderWidth="0px" />
|
||||
</dxe:ASPxButton>
|
||||
</div>
|
||||
<script type="text/javascript" id="dxss_">
|
||||
ASPxClientSelectionToolTip = _aspxCreateClass(ASPxClientToolTipBase, {
|
||||
Initialize: function() {
|
||||
ASPxClientUtils.AttachEventToElement(this.controls.buttonDiv, "click", _aspxCreateDelegate(this.OnButtonDivClick, this));
|
||||
},
|
||||
OnButtonDivClick: function(s,e) {
|
||||
this.ShowViewMenu(s);
|
||||
}
|
||||
});
|
||||
</script>
|
||||
@@ -0,0 +1,33 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class UserForms_SelectionToolTip
|
||||
|
||||
'''<summary>
|
||||
'''buttonDiv control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents buttonDiv As Global.System.Web.UI.HtmlControls.HtmlGenericControl
|
||||
|
||||
'''<summary>
|
||||
'''btnShowMenu control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents btnShowMenu As Global.DevExpress.Web.ASPxButton
|
||||
End Class
|
||||
@@ -0,0 +1,40 @@
|
||||
Imports Microsoft.VisualBasic
|
||||
Imports System
|
||||
Imports System.Data
|
||||
Imports System.Configuration
|
||||
Imports System.Collections
|
||||
Imports System.Web
|
||||
Imports System.Web.Security
|
||||
Imports System.Web.UI
|
||||
Imports System.Web.UI.WebControls
|
||||
Imports System.Web.UI.WebControls.WebParts
|
||||
Imports System.Web.UI.HtmlControls
|
||||
Imports DevExpress.Web.ASPxScheduler
|
||||
Imports DevExpress.Web.ASPxScheduler.Internal
|
||||
Imports DevExpress.Web
|
||||
|
||||
Partial Public Class UserForms_SelectionToolTip
|
||||
Inherits ASPxSchedulerToolTipBase
|
||||
Public Overrides ReadOnly Property ToolTipShowStem() As Boolean
|
||||
Get
|
||||
Return False
|
||||
End Get
|
||||
End Property
|
||||
Public Overrides ReadOnly Property ClassName() As String
|
||||
Get
|
||||
Return "ASPxClientSelectionToolTip"
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
|
||||
DevExpress.Web.ASPxWebControl.RegisterBaseScript(Page)
|
||||
End Sub
|
||||
Protected Overrides Sub OnLoad(ByVal e As EventArgs)
|
||||
MyBase.OnLoad(e)
|
||||
btnShowMenu.Image.Assign(GetSmartTagImage())
|
||||
End Sub
|
||||
Protected Overrides Function GetChildControls() As Control()
|
||||
Dim controls() As Control = { buttonDiv }
|
||||
Return controls
|
||||
End Function
|
||||
End Class
|
||||
@@ -0,0 +1,74 @@
|
||||
<%--
|
||||
{************************************************************************************}
|
||||
{ }
|
||||
{ DO NOT MODIFY THIS FILE! }
|
||||
{ }
|
||||
{ It will be overwritten without prompting when a new version becomes }
|
||||
{ available. All your changes will be lost. }
|
||||
{ }
|
||||
{ This file contains the default template and is required for the appointment }
|
||||
{ rendering. Improper modifications may result in incorrect appearance of the }
|
||||
{ appointment. }
|
||||
{ }
|
||||
{ In order to create and use your own custom template, perform the following }
|
||||
{ steps: }
|
||||
{ 1. Save a copy of this file with a different name in another location. }
|
||||
{ 2. Add a Register tag in the .aspx page header for each template you use, }
|
||||
{ as follows: <%@ Register Src="PathToTemplateFile" TagName="NameOfTemplate"}
|
||||
{ TagPrefix="ShortNameOfTemplate" %> }
|
||||
{ 3. In the .aspx page find the tags for different scheduler views within }
|
||||
{ the ASPxScheduler control tag. Insert template tags into the tags }
|
||||
{ for the views which should be customized. }
|
||||
{ The template tag should satisfy the following pattern: }
|
||||
{ <Templates> }
|
||||
{ <VerticalAppointmentTemplate> }
|
||||
{ < ShortNameOfTemplate: NameOfTemplate runat="server"/> }
|
||||
{ </VerticalAppointmentTemplate> }
|
||||
{ </Templates> }
|
||||
{ where ShortNameOfTemplate, NameOfTemplate are the names of the }
|
||||
{ registered templates, defined in step 2. }
|
||||
{************************************************************************************}
|
||||
--%>
|
||||
<%@ Control Language="vb" AutoEventWireup="true" Inherits="VerticalAppointmentTemplate" Codebehind="VerticalAppointmentTemplate.ascx.vb" %>
|
||||
<%@ Register Assembly="DevExpress.Web.ASPxScheduler.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web.ASPxScheduler" TagPrefix="dxwschs" %>
|
||||
<%@ Register Assembly="DevExpress.Web.v15.2, Version=15.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" Namespace="DevExpress.Web" TagPrefix="dxe" %>
|
||||
<div id="appointmentDiv" runat="server" class='<%#(CType(Container, VerticalAppointmentTemplateContainer)).Items.AppointmentStyle.CssClass%>'>
|
||||
<table width="100%" cellpadding="0" cellspacing="0">
|
||||
<tr valign="top" >
|
||||
<td runat="server" id="statusContainer">
|
||||
</td>
|
||||
<td style="width:100%">
|
||||
<table cellpadding="1" cellspacing="0" width="100%">
|
||||
<tr valign="top">
|
||||
<td>
|
||||
<table id="imageContainer" runat="server" cellpadding="1" cellspacing="0" style="text-align: center">
|
||||
<tr><td></td></tr>
|
||||
</table>
|
||||
</td>
|
||||
<td style="width:100%">
|
||||
<table width="100%" cellpadding="1" cellspacing="0" >
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxLabel runat="server" EnableViewState="false" EncodeHtml="true" ID="lblStartTime" Text='<%#(CType(Container, VerticalAppointmentTemplateContainer)).Items.StartTimeText.Text%>' Visible='<%#(CType(Container, VerticalAppointmentTemplateContainer)).Items.StartTimeText.Visible%>'></dxe:ASPxLabel>
|
||||
<dxe:ASPxLabel runat="server" EnableViewState="false" EncodeHtml="true" style="margin-left: -4px;" ID="lblEndTime" Text='<%#(CType(Container, VerticalAppointmentTemplateContainer)).Items.EndTimeText.Text%>' Visible='<%#(CType(Container, VerticalAppointmentTemplateContainer)).Items.EndTimeText.Visible%>'></dxe:ASPxLabel>
|
||||
<dxe:ASPxLabel runat="server" EnableViewState="false" EncodeHtml="true" ID="lblTitle" Text='<%#(CType(Container, VerticalAppointmentTemplateContainer)).Items.Title.Text%>'></dxe:ASPxLabel>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div runat="server" id="horizontalSeparator" class='<%#(CType(Container, VerticalAppointmentTemplateContainer)).Items.HorizontalSeparator.Style.CssClass%>' visible='<%#(CType(Container, VerticalAppointmentTemplateContainer)).Items.HorizontalSeparator.Visible%>'></div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<dxe:ASPxLabel runat="server" EnableViewState="false" EncodeHtml="true" ID="lblDescription" Text='<%#(CType(Container, VerticalAppointmentTemplateContainer)).Items.Description.Text%>'></dxe:ASPxLabel>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
@@ -0,0 +1,87 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class VerticalAppointmentTemplate
|
||||
|
||||
'''<summary>
|
||||
'''appointmentDiv control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents appointmentDiv As Global.System.Web.UI.HtmlControls.HtmlGenericControl
|
||||
|
||||
'''<summary>
|
||||
'''statusContainer control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents statusContainer As Global.System.Web.UI.HtmlControls.HtmlTableCell
|
||||
|
||||
'''<summary>
|
||||
'''imageContainer control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents imageContainer As Global.System.Web.UI.HtmlControls.HtmlTable
|
||||
|
||||
'''<summary>
|
||||
'''lblStartTime control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblStartTime As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''lblEndTime control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblEndTime As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''lblTitle control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblTitle As Global.DevExpress.Web.ASPxLabel
|
||||
|
||||
'''<summary>
|
||||
'''horizontalSeparator control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents horizontalSeparator As Global.System.Web.UI.HtmlControls.HtmlGenericControl
|
||||
|
||||
'''<summary>
|
||||
'''lblDescription control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents lblDescription As Global.DevExpress.Web.ASPxLabel
|
||||
End Class
|
||||
@@ -0,0 +1,80 @@
|
||||
'
|
||||
'{************************************************************************************}
|
||||
'{ }
|
||||
'{ DO NOT MODIFY THIS FILE! }
|
||||
'{ }
|
||||
'{ It will be overwritten without prompting when a new version becomes }
|
||||
'{ available. All your changes will be lost. }
|
||||
'{ }
|
||||
'{ This file contains the default template and is required for the appointment }
|
||||
'{ rendering. Improper modifications may result in incorrect appearance of the }
|
||||
'{ appointment. }
|
||||
'{ }
|
||||
'{ In order to create and use your own custom template, perform the following }
|
||||
'{ steps: }
|
||||
'{ 1. Save a copy of this file with a different name in another location. }
|
||||
'{ 2. Add a Register tag in the .aspx page header for each template you use, }
|
||||
'{ as follows: <%@ Register Src="PathToTemplateFile" TagName="NameOfTemplate"}
|
||||
'{ TagPrefix="ShortNameOfTemplate" %> }
|
||||
'{ 3. In the .aspx page find the tags for different scheduler views within }
|
||||
'{ the ASPxScheduler control tag. Insert template tags into the tags }
|
||||
'{ for the views which should be customized. }
|
||||
'{ The template tag should satisfy the following pattern: }
|
||||
'{ <Templates> }
|
||||
'{ <VerticalAppointmentTemplate> }
|
||||
'{ < ShortNameOfTemplate: NameOfTemplate runat="server"/> }
|
||||
'{ </VerticalAppointmentTemplate> }
|
||||
'{ </Templates> }
|
||||
'{ where ShortNameOfTemplate, NameOfTemplate are the names of the }
|
||||
'{ registered templates, defined in step 2. }
|
||||
'{************************************************************************************}
|
||||
'
|
||||
|
||||
Imports Microsoft.VisualBasic
|
||||
Imports System
|
||||
Imports System.Web.UI.WebControls
|
||||
Imports System.Web.UI.HtmlControls
|
||||
Imports DevExpress.Web.ASPxScheduler
|
||||
Imports DevExpress.Web.ASPxScheduler.Drawing
|
||||
|
||||
Partial Public Class VerticalAppointmentTemplate
|
||||
Inherits System.Web.UI.UserControl
|
||||
Private ReadOnly Property Container() As VerticalAppointmentTemplateContainer
|
||||
Get
|
||||
Return CType(Parent, VerticalAppointmentTemplateContainer)
|
||||
End Get
|
||||
End Property
|
||||
Private ReadOnly Property Items() As VerticalAppointmentTemplateItems
|
||||
Get
|
||||
Return Container.Items
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
|
||||
appointmentDiv.Style.Value = Items.AppointmentStyle.GetStyleAttributes(Page).Value
|
||||
horizontalSeparator.Style.Value = Items.HorizontalSeparator.Style.GetStyleAttributes(Page).Value
|
||||
|
||||
lblStartTime.ControlStyle.MergeWith(Items.StartTimeText.Style)
|
||||
lblEndTime.ControlStyle.MergeWith(Items.EndTimeText.Style)
|
||||
lblTitle.ControlStyle.MergeWith(Items.Title.Style)
|
||||
lblDescription.ControlStyle.MergeWith(Items.Description.Style)
|
||||
|
||||
statusContainer.Controls.Add(Items.StatusControl)
|
||||
LayoutAppointmentImages()
|
||||
End Sub
|
||||
Private Sub LayoutAppointmentImages()
|
||||
Dim count As Integer = Items.Images.Count
|
||||
For i As Integer = 0 To count - 1
|
||||
Dim row As New HtmlTableRow()
|
||||
Dim cell As New HtmlTableCell()
|
||||
AddImage(cell, Items.Images(i))
|
||||
row.Cells.Add(cell)
|
||||
imageContainer.Rows.Add(row)
|
||||
Next i
|
||||
End Sub
|
||||
Private Sub AddImage(ByVal targetCell As HtmlTableCell, ByVal imageItem As AppointmentImageItem)
|
||||
Dim image As New Image()
|
||||
imageItem.ImageProperties.AssignToControl(image, False)
|
||||
targetCell.Controls.Add(image)
|
||||
End Sub
|
||||
End Class
|
||||
@@ -0,0 +1,140 @@
|
||||
<%@ Page Language="vb" AutoEventWireup="false" Inherits="ErrorPage" EnableViewState="false"
|
||||
ValidateRequest="false" CodeBehind="Error.aspx.vb" %>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head id="Head1" runat="server">
|
||||
<title>Error</title>
|
||||
<meta http-equiv="Expires" content="0" />
|
||||
</head>
|
||||
<body class="Dialog Error" onload="javascript:ClientPageLoad()">
|
||||
<div id="PageContent" class="PageContent DialogPageContent">
|
||||
<table id="formTable" cellpadding="0" cellspacing="0" width="100%">
|
||||
<tr>
|
||||
<td>
|
||||
<form id="form1" runat="server">
|
||||
<div class="Header">
|
||||
<table cellpadding="0" cellspacing="0" border="0">
|
||||
<tr>
|
||||
<td class="ViewCaption">
|
||||
<h1>
|
||||
<asp:Literal ID="ApplicationTitle" runat="server" Text="Test Application"></asp:Literal></h1>
|
||||
</td>
|
||||
<td class="InfoMessagesPanel">
|
||||
<asp:Literal ID="InfoMessagesPanel" runat="server" Text=""></asp:Literal>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<table class="DialogContent Content" border="0" cellpadding="0" cellspacing="0" width="100%">
|
||||
<tr>
|
||||
<td class="ContentCell">
|
||||
<asp:Table ID="Table1" runat="server" Width="100%" BorderWidth="0px" CellPadding="0"
|
||||
CellSpacing="0">
|
||||
<asp:TableRow ID="TableRow2" runat="server">
|
||||
<asp:TableCell runat="server" ID="ViewSite">
|
||||
<h2 id="FormCaption">
|
||||
<asp:Literal ID="ErrorTitleLiteral" runat="server" Text="Application Error"></asp:Literal></h2>
|
||||
<asp:Panel runat="server" ID="ErrorPanel" Width="100%">
|
||||
<p class="StaticText" id="MainErrorText">
|
||||
<asp:PlaceHolder ID="ReportResult" runat="server">Your report was sent. Thank you.
|
||||
<br />
|
||||
</asp:PlaceHolder>
|
||||
<asp:PlaceHolder ID="ApologizeMessage" runat="server">We apologize, but an error occurred and your request could not be completed.
|
||||
<br />
|
||||
You could go
|
||||
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl="javascript:Back();">back</asp:HyperLink> and
|
||||
try again or
|
||||
<asp:LinkButton ID="NavigateToStart" runat="server" OnClick="NavigateToStart_Click">restart the application</asp:LinkButton>.
|
||||
</asp:PlaceHolder>
|
||||
</p>
|
||||
<p class="StaticText" id="PopupErrorText">
|
||||
<asp:PlaceHolder ID="PopupReportResult" runat="server">Your report was sent. Thank you.
|
||||
<br />
|
||||
</asp:PlaceHolder>
|
||||
<asp:PlaceHolder ID="PopupApologizeMessage" runat="server">We apologize, but an error occurred and your request could not be completed.
|
||||
<br />
|
||||
You could go
|
||||
<asp:HyperLink ID="HyperLink2" runat="server" NavigateUrl="javascript:Back();">back</asp:HyperLink> and
|
||||
try again.
|
||||
</asp:PlaceHolder>
|
||||
</p>
|
||||
<asp:Panel ID="Details" runat="server" Width="100%">
|
||||
<a style="text-decoration: underline; cursor: hand;" id="ShowErrorDetails" onclick="javascript:ShowDetails();">Show Error details</a>
|
||||
<div id="DetailsContent" style="display: none;">
|
||||
<span class="StaticText" style="font-weight: bold;">Error details<hr width="100%" />
|
||||
</span><a style="text-decoration: underline; cursor: hand;" id="HideErrorDetails"
|
||||
onclick="javascript:HideDetails();">Hide Error details</a>
|
||||
<pre class="ErrorDetails">
|
||||
<asp:literal id="DetailsText" runat="server"></asp:literal></pre>
|
||||
</div>
|
||||
</asp:Panel>
|
||||
<asp:Panel ID="ReportForm" runat="server" Width="100%">
|
||||
<span class="StaticText" style="font-weight: bold;">Report error<hr width="100%" />
|
||||
</span>
|
||||
<p class="StaticText">
|
||||
This error has been logged. If you have additional information that you believe
|
||||
may have caused this error please report the problem.
|
||||
</p>
|
||||
<table cellpadding="0" cellspacing="0" border="0">
|
||||
<tr>
|
||||
<td align="right" style="padding-bottom: 10px">
|
||||
<asp:TextBox ID="DescriptionTextBox" runat="server" Columns="60" Rows="8" TextMode="MultiLine">
|
||||
</asp:TextBox>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="right">
|
||||
<asp:Button ID="ReportButton" runat="server" Text="Send Report" OnClick="ReportButton_Click" />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</asp:Panel>
|
||||
</asp:Panel>
|
||||
</asp:TableCell>
|
||||
</asp:TableRow>
|
||||
</asp:Table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<div id="Spacer" class="Spacer">
|
||||
</div>
|
||||
</form>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
function Back() {
|
||||
if (window != window.top) {
|
||||
window.top.closeActiveXafPopupWindow();
|
||||
} else {
|
||||
history.go(-1);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
function ShowDetails() {
|
||||
document.getElementById('DetailsContent').style.display = 'block';
|
||||
document.getElementById('ShowErrorDetails').style.display = 'none';
|
||||
return false;
|
||||
}
|
||||
function HideDetails() {
|
||||
document.getElementById('DetailsContent').style.display = 'none';
|
||||
document.getElementById('ShowErrorDetails').style.display = 'block';
|
||||
return false;
|
||||
}
|
||||
function ClientPageLoad() {
|
||||
var errorText = null;
|
||||
if (window != window.top) {
|
||||
errorText = document.getElementById('MainErrorText');
|
||||
} else {
|
||||
errorText = document.getElementById('PopupErrorText');
|
||||
}
|
||||
if (errorText) {
|
||||
errorText.style.display = 'none';
|
||||
}
|
||||
}
|
||||
//-->
|
||||
</script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,204 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Partial Public Class ErrorPage
|
||||
|
||||
'''<summary>
|
||||
'''Head1 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents Head1 As Global.System.Web.UI.HtmlControls.HtmlHead
|
||||
|
||||
'''<summary>
|
||||
'''form1 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents form1 As Global.System.Web.UI.HtmlControls.HtmlForm
|
||||
|
||||
'''<summary>
|
||||
'''ApplicationTitle control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ApplicationTitle As Global.System.Web.UI.WebControls.Literal
|
||||
|
||||
'''<summary>
|
||||
'''InfoMessagesPanel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents InfoMessagesPanel As Global.System.Web.UI.WebControls.Literal
|
||||
|
||||
'''<summary>
|
||||
'''Table1 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents Table1 As Global.System.Web.UI.WebControls.Table
|
||||
|
||||
'''<summary>
|
||||
'''TableRow2 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents TableRow2 As Global.System.Web.UI.WebControls.TableRow
|
||||
|
||||
'''<summary>
|
||||
'''ViewSite control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ViewSite As Global.System.Web.UI.WebControls.TableCell
|
||||
|
||||
'''<summary>
|
||||
'''ErrorTitleLiteral control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ErrorTitleLiteral As Global.System.Web.UI.WebControls.Literal
|
||||
|
||||
'''<summary>
|
||||
'''ErrorPanel control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ErrorPanel As Global.System.Web.UI.WebControls.Panel
|
||||
|
||||
'''<summary>
|
||||
'''ReportResult control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ReportResult As Global.System.Web.UI.WebControls.PlaceHolder
|
||||
|
||||
'''<summary>
|
||||
'''ApologizeMessage control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ApologizeMessage As Global.System.Web.UI.WebControls.PlaceHolder
|
||||
|
||||
'''<summary>
|
||||
'''HyperLink1 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents HyperLink1 As Global.System.Web.UI.WebControls.HyperLink
|
||||
|
||||
'''<summary>
|
||||
'''NavigateToStart control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents NavigateToStart As Global.System.Web.UI.WebControls.LinkButton
|
||||
|
||||
'''<summary>
|
||||
'''PopupReportResult control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents PopupReportResult As Global.System.Web.UI.WebControls.PlaceHolder
|
||||
|
||||
'''<summary>
|
||||
'''PopupApologizeMessage control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents PopupApologizeMessage As Global.System.Web.UI.WebControls.PlaceHolder
|
||||
|
||||
'''<summary>
|
||||
'''HyperLink2 control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents HyperLink2 As Global.System.Web.UI.WebControls.HyperLink
|
||||
|
||||
'''<summary>
|
||||
'''Details control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents Details As Global.System.Web.UI.WebControls.Panel
|
||||
|
||||
'''<summary>
|
||||
'''DetailsText control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents DetailsText As Global.System.Web.UI.WebControls.Literal
|
||||
|
||||
'''<summary>
|
||||
'''ReportForm control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ReportForm As Global.System.Web.UI.WebControls.Panel
|
||||
|
||||
'''<summary>
|
||||
'''DescriptionTextBox control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents DescriptionTextBox As Global.System.Web.UI.WebControls.TextBox
|
||||
|
||||
'''<summary>
|
||||
'''ReportButton control.
|
||||
'''</summary>
|
||||
'''<remarks>
|
||||
'''Auto-generated field.
|
||||
'''To modify move field declaration from designer file to code-behind file.
|
||||
'''</remarks>
|
||||
Protected WithEvents ReportButton As Global.System.Web.UI.WebControls.Button
|
||||
End Class
|
||||
@@ -0,0 +1,89 @@
|
||||
Imports Microsoft.VisualBasic
|
||||
Imports System
|
||||
Imports System.IO
|
||||
Imports System.Collections
|
||||
Imports System.ComponentModel
|
||||
Imports System.Data
|
||||
Imports System.Globalization
|
||||
Imports System.Threading
|
||||
Imports System.Drawing
|
||||
Imports System.Web
|
||||
Imports System.Web.SessionState
|
||||
Imports System.Web.UI
|
||||
Imports System.Web.UI.WebControls
|
||||
Imports System.Web.UI.HtmlControls
|
||||
|
||||
Imports DevExpress.ExpressApp.Web
|
||||
Imports DevExpress.ExpressApp.Web.TestScripts
|
||||
Imports DevExpress.ExpressApp.Utils
|
||||
Imports DevExpress.ExpressApp.SystemModule
|
||||
Imports DevExpress.ExpressApp.Web.SystemModule
|
||||
|
||||
Partial Public Class ErrorPage
|
||||
Inherits System.Web.UI.Page
|
||||
Private Function GetApplicationInfoString() As String
|
||||
AboutInfo.Instance.Init(WebApplication.Instance)
|
||||
Return AboutInfo.Instance.AboutInfoString
|
||||
End Function
|
||||
Protected Overrides Sub InitializeCulture()
|
||||
If WebApplication.Instance IsNot Nothing Then
|
||||
WebApplication.Instance.InitializeCulture()
|
||||
End If
|
||||
End Sub
|
||||
Private Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
|
||||
Dim testScriptsManager As New TestScriptsManager(Page)
|
||||
testScriptsManager.RegisterControl(JSLabelTestControl.ClassName, "FormCaption", TestControlType.Field, "FormCaption")
|
||||
testScriptsManager.RegisterControl(JSLabelTestControl.ClassName, "DescriptionTextBox", TestControlType.Field, "Description")
|
||||
testScriptsManager.RegisterControl(JSDefaultTestControl.ClassName, "ReportButton", TestControlType.Action, "Report")
|
||||
testScriptsManager.AllControlRegistered()
|
||||
If WebApplication.Instance IsNot Nothing Then
|
||||
ApplicationTitle.Text = WebApplication.Instance.Title
|
||||
Else
|
||||
ApplicationTitle.Text = "No application"
|
||||
End If
|
||||
Header.Title = "Application Error - " & ApplicationTitle.Text
|
||||
|
||||
Dim errorInfo As ErrorInfo = ErrorHandling.GetApplicationError()
|
||||
If errorInfo IsNot Nothing Then
|
||||
If ErrorHandling.CanShowDetailedInformation Then
|
||||
DetailsText.Text = errorInfo.GetTextualPresentation(True)
|
||||
Else
|
||||
Details.Visible = False
|
||||
End If
|
||||
ReportResult.Visible = False
|
||||
ReportForm.Visible = ErrorHandling.CanSendAlertToAdmin
|
||||
Else
|
||||
ErrorPanel.Visible = False
|
||||
End If
|
||||
End Sub
|
||||
#Region "Web Form Designer generated code"
|
||||
Protected Overrides Sub OnInit(ByVal e As EventArgs)
|
||||
InitializeComponent()
|
||||
MyBase.OnInit(e)
|
||||
End Sub
|
||||
|
||||
Private Sub InitializeComponent()
|
||||
' Me.Load += New System.EventHandler(Me.Page_Load);
|
||||
' Me.PreRender += New EventHandler(ErrorPage_PreRender);
|
||||
End Sub
|
||||
|
||||
Private Sub ErrorPage_PreRender(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.PreRender
|
||||
RegisterThemeAssemblyController.RegisterThemeResources(CType(sender, Page))
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
Protected Sub ReportButton_Click(ByVal sender As Object, ByVal e As EventArgs)
|
||||
Dim errorInfo As ErrorInfo = ErrorHandling.GetApplicationError()
|
||||
If errorInfo IsNot Nothing Then
|
||||
ErrorHandling.SendAlertToAdmin(errorInfo.Id, DescriptionTextBox.Text, errorInfo.Exception.Message)
|
||||
ErrorHandling.ClearApplicationError()
|
||||
ApologizeMessage.Visible = False
|
||||
ReportForm.Visible = False
|
||||
Details.Visible = False
|
||||
ReportResult.Visible = True
|
||||
End If
|
||||
End Sub
|
||||
Protected Sub NavigateToStart_Click(ByVal sender As Object, ByVal e As EventArgs)
|
||||
WebApplication.Instance.LogOff()
|
||||
End Sub
|
||||
End Class
|
||||
@@ -0,0 +1 @@
|
||||
<%@ WebHandler Language="VB" CodeBehind="GetAttachments.ashx.vb" Class=".GetAttachments" %>
|
||||
@@ -0,0 +1,42 @@
|
||||
Imports System.Web
|
||||
Imports System.Web.Services
|
||||
Imports SISBusiness.Module
|
||||
Imports DevExpress.ExpressApp.FileAttachments
|
||||
Imports DevExpress.Persistent.BaseImpl
|
||||
Imports DevExpress.Data.Filtering
|
||||
Imports System.IO
|
||||
Imports DevExpress.Web.Internal
|
||||
|
||||
Public Class GetAttachments
|
||||
Implements System.Web.IHttpHandler
|
||||
Private _Session As DevExpress.Xpo.Session
|
||||
Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest
|
||||
Dim _Oid As String
|
||||
Dim _ConnectionString As String
|
||||
Dim _Attachment As FileData
|
||||
|
||||
_Oid = context.Request.QueryString("id")
|
||||
_ConnectionString = ConfigurationManager.ConnectionStrings("ConnectionString").ToString
|
||||
|
||||
_Session = New DevExpress.Xpo.Session
|
||||
_Session.ConnectionString = _ConnectionString
|
||||
_Session.Connect()
|
||||
|
||||
If _Session.IsConnected Then
|
||||
_Attachment = _Session.FindObject(Of FileData)(CriteriaOperator.Parse("Oid=?", _Oid))
|
||||
|
||||
If _Attachment IsNot Nothing Then
|
||||
Dim _Stream As New MemoryStream
|
||||
_Attachment.SaveToStream(_Stream)
|
||||
HttpUtils.WriteFileToResponse(Nothing, _Stream, _Attachment.FileName, True, "")
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
ReadOnly Property IsReusable() As Boolean Implements IHttpHandler.IsReusable
|
||||
Get
|
||||
Return False
|
||||
End Get
|
||||
End Property
|
||||
|
||||
End Class
|
||||
@@ -0,0 +1 @@
|
||||
<%@ Application Language="vb" CodeBehind="Global.asax.vb" Inherits="Global"%>
|
||||
@@ -0,0 +1,67 @@
|
||||
Imports Microsoft.VisualBasic
|
||||
Imports System
|
||||
Imports System.Configuration
|
||||
Imports System.Web.Configuration
|
||||
Imports System.Web
|
||||
|
||||
Imports DevExpress.ExpressApp
|
||||
Imports DevExpress.Persistent.Base
|
||||
Imports DevExpress.Persistent.BaseImpl
|
||||
Imports DevExpress.ExpressApp.Security
|
||||
Imports DevExpress.ExpressApp.Web
|
||||
Imports DevExpress.Web
|
||||
|
||||
Public Class [Global]
|
||||
Inherits System.Web.HttpApplication
|
||||
Public Sub New()
|
||||
InitializeComponent()
|
||||
End Sub
|
||||
Protected Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)
|
||||
AddHandler ASPxWebControl.CallbackError, AddressOf Application_Error
|
||||
#If EASYTEST Then
|
||||
DevExpress.ExpressApp.Web.TestScripts.TestScriptsManager.EasyTestEnabled = True
|
||||
#End If
|
||||
|
||||
End Sub
|
||||
Protected Sub Session_Start(ByVal sender As Object, ByVal e As EventArgs)
|
||||
WebApplication.SetInstance(Session, New SISBusinessSupportAspNetApplication())
|
||||
'WebApplication.Instance.SwitchToNewStyle()
|
||||
If (Not ConfigurationManager.ConnectionStrings.Item("ConnectionString") Is Nothing) Then
|
||||
WebApplication.Instance.ConnectionString = ConfigurationManager.ConnectionStrings.Item("ConnectionString").ConnectionString
|
||||
End If
|
||||
#If EASYTEST Then
|
||||
If (Not ConfigurationManager.ConnectionStrings.Item("EasyTestConnectionString") Is Nothing) Then
|
||||
WebApplication.Instance.ConnectionString = ConfigurationManager.ConnectionStrings.Item("EasyTestConnectionString").ConnectionString
|
||||
End If
|
||||
#End If
|
||||
If System.Diagnostics.Debugger.IsAttached Then
|
||||
WebApplication.Instance.DatabaseUpdateMode = DatabaseUpdateMode.UpdateDatabaseAlways
|
||||
End If
|
||||
WebApplication.Instance.Setup()
|
||||
WebApplication.Instance.Start()
|
||||
End Sub
|
||||
|
||||
Protected Sub Application_BeginRequest(ByVal sender As Object, ByVal e As EventArgs)
|
||||
End Sub
|
||||
Protected Sub Application_EndRequest(ByVal sender As Object, ByVal e As EventArgs)
|
||||
End Sub
|
||||
Protected Sub Application_AuthenticateRequest(ByVal sender As Object, ByVal e As EventArgs)
|
||||
End Sub
|
||||
Protected Sub Application_Error(ByVal sender As Object, ByVal e As EventArgs)
|
||||
ErrorHandling.Instance.ProcessApplicationError()
|
||||
End Sub
|
||||
Protected Sub Session_End(ByVal sender As Object, ByVal e As EventArgs)
|
||||
WebApplication.LogOff(Session)
|
||||
WebApplication.DisposeInstance(Session)
|
||||
End Sub
|
||||
Protected Sub Application_End(ByVal sender As Object, ByVal e As EventArgs)
|
||||
End Sub
|
||||
#Region "Web Form Designer generated code"
|
||||
''' <summary>
|
||||
''' Required method for Designer support - do not modify
|
||||
''' the contents of this method with the code editor.
|
||||
''' </summary>
|
||||
Private Sub InitializeComponent()
|
||||
End Sub
|
||||
#End Region
|
||||
End Class
|
||||
|
After Width: | Height: | Size: 148 B |
|
After Width: | Height: | Size: 7.3 KiB |
|
After Width: | Height: | Size: 149 B |
|
After Width: | Height: | Size: 152 B |
|
After Width: | Height: | Size: 49 B |
|
After Width: | Height: | Size: 152 B |
|
After Width: | Height: | Size: 29 KiB |
|
After Width: | Height: | Size: 9.4 KiB |
|
After Width: | Height: | Size: 151 B |
|
After Width: | Height: | Size: 46 B |
|
After Width: | Height: | Size: 607 B |
|
After Width: | Height: | Size: 231 B |
|
After Width: | Height: | Size: 608 B |
|
After Width: | Height: | Size: 232 B |
|
After Width: | Height: | Size: 170 B |
|
After Width: | Height: | Size: 169 B |
|
After Width: | Height: | Size: 158 B |
|
After Width: | Height: | Size: 150 B |
|
After Width: | Height: | Size: 599 B |
|
After Width: | Height: | Size: 603 B |
|
After Width: | Height: | Size: 495 B |
|
After Width: | Height: | Size: 786 B |