| <html xmlns="http://www.w3.org/1999/xhtml" > |
| <head runat="server"> |
| <title>Untitled Page</title> |
| </head> |
| <body> |
| <telerik:RadCodeBlock ID="CodeBlock" runat="server"> |
| <script type="text/javascript"> |
| var editedRow = -1; |
| function RowDblClick(sender, eventArgs) { |
| var masterTable = $find("<%= Grid.MasterTableView.ClientID %>"); |
| if(editedRow != -1) { |
| masterTable.updateItem(editedRow); |
| } |
| editedRow = eventArgs.get_itemIndexHierarchical(); |
| masterTable.editItem(editedRow); |
| } |
| </script> |
| </telerik:RadCodeBlock> |
| <form id="form1" runat="server"> |
| <telerik:RadScriptManager ID="ScriptManager" runat="server"> |
| </telerik:RadScriptManager> |
| <telerik:RadAjaxPanel ID="AjaxPanel" runat="server" Height="100%" Width="100%"> |
| <telerik:RadGrid ID="Grid" |
| runat="server" |
| AllowAutomaticUpdates="true" |
| AutoGenerateColumns="false" |
| OnItemUpdated="Grid_ItemUpdated" |
| OnNeedDataSource="Grid_NeedDataSource" |
| Skin="Hay" > |
| <MasterTableView EditMode="InPlace" > |
| <Columns> |
| <telerik:GridBoundColumn DataField="columna" UniqueName="columna" HeaderText="Column A"></telerik:GridBoundColumn> |
| <telerik:GridBoundColumn DataField="columnb" UniqueName="columnb" HeaderText="Column B"></telerik:GridBoundColumn> |
| <telerik:GridBoundColumn DataField="columnc" UniqueName="columnc" HeaderText="Column C"></telerik:GridBoundColumn> |
| <telerik:GridBoundColumn DataField="idx" UniqueName="idx" Visible="false"></telerik:GridBoundColumn> |
| </Columns> |
| </MasterTableView> |
| <ClientSettings> |
| <ClientEvents OnRowDblClick="RowDblClick" /> |
| <Selecting AllowRowSelect="true" /> |
| </ClientSettings> |
| </telerik:RadGrid> |
| </telerik:RadAjaxPanel> |
| </form> |
| </body> |
| </html> |
| var apt = eventArgs.get_appointment(); |
| var aptID = apt.get_id(); |
<telerik:RadGrid ID="RadGrid1" runat="server" GridLines="None" Skin="Telerik" OnNeedDataSource="RadGrid1_NeedDataSource" OnRowDrop="RadGrid1_RowDrop" AllowMultiRowSelection="true" >
<MasterTableView DataKeyNames="id">
</MasterTableView>
<ClientSettings AllowRowsDragDrop="True">
<Selecting AllowRowSelect="True" EnableDragToSelectRows="true" />
</ClientSettings>
</telerik:RadGrid>
VB:
Protected Sub RadGrid1_RowDrop(ByVal sender As Object, ByVal e As GridDragDropEventArgs) Handles RadGrid1.RowDrop
If String.IsNullOrEmpty(e.HtmlElement) Then
If e.DestDataItem IsNot Nothing Then
Dim categoryList As IList(Of category)
categoryList = categoryStore
Dim categoryItem As category = GetCategory(categoryList, DirectCast(e.DestDataItem.GetDataKeyValue("id"), Integer))
Dim destinationIndex As Integer = categoryList.IndexOf(categoryItem)
Dim categoriesToMove As New List(Of category)()
For Each draggedItem As GridDataItem In e.DraggedItems
Dim tmpcategory As category = GetCategory(categoryList, DirectCast(draggedItem.GetDataKeyValue("id"), Integer))
If tmpcategory IsNot Nothing Then
categoriesToMove.Add(tmpcategory)
End If
Next
For Each categoryToMove As category In categoriesToMove
categoryList.Remove(categoryToMove)
categoryList.Insert(destinationIndex, categoryToMove)
Next
categoryStore = categoryList
RadGrid1.Rebind()
e.DestDataItem.Selected = True
End If
End If
End Sub
Protected Property categoryStore() As IList(Of category)
Get
Try
Dim obj As Object = Session("categoryList_VB")
If obj Is Nothing Then
obj = GetCategories()
Session("categoryList_VB") = obj
End If
Return DirectCast(obj, IList(Of category))
Catch ex As Exception
Session("categoryList_VB") = Nothing
End Try
Return New List(Of category)
End Get
Set(ByVal value As IList(Of category))
Session("categoryList_VB") = value
End Set
End Property
Protected Sub RadGrid1_NeedDataSource(ByVal source As Object, ByVal e As GridNeedDataSourceEventArgs)
RadGrid1.DataSource = categoryStore
End Sub
Protected Function GetCategories() As IList(Of category)
Dim results As IList(Of category) = New List(Of category)()
Dim dbCon As New SqlConnection("Data Source=SHEP\SQLEXPRESS;Initial Catalog=abelSQL;Integrated Security=True")
Dim dbCmd As New SqlCommand
dbCmd.Connection = dbCon
dbCmd.CommandText = "SELECT id, dscrp, seq FROM sitecostsPrimary ORDER BY seq ASC"
dbCon.Open()
Dim reader As IDataReader = dbCmd.ExecuteReader()
While reader.Read()
Dim id As Integer = DirectCast(reader.GetValue(reader.GetOrdinal("id")), Integer)
Dim dscrp As String = DirectCast(reader.GetValue(reader.GetOrdinal("dscrp")), String)
Dim seq As Integer = DirectCast(reader.GetValue(reader.GetOrdinal("seq")), Integer)
results.Add(New category(id, dscrp, seq))
End While
results.Add(New category(999, "Test item", 99))
Return results
End Function
Private Shared Function GetCategory(ByVal ordersToSearchIn As IEnumerable(Of category), ByVal id As Integer) As category
For Each cat As category In ordersToSearchIn
If cat.id = id Then
Return cat
End If
Next
Return Nothing
End Function
Protected Class category
Private _id As Integer
Private _dscrp As String
Private _seq As Integer
Public Sub New(ByVal id As Integer, ByVal dscrp As String, ByVal seq As Integer)
_id = id
_dscrp = dscrp
_seq = seq
End Sub
Public ReadOnly Property id() As Integer
Get
Return _id
End Get
End Property
Public ReadOnly Property dscrp() As String
Get
Return _dscrp
End Get
End Property
Public ReadOnly Property seq() As String
Get
Return _seq
End Get
End Property
End Class
| <telerik:RadFormDecorator ID="formDecorator" runat="server" Skin="Web20" /> |
| <telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server" Height="75px" |
| Width="75px"> |
| <img alt="Loading..." src='<%= RadAjaxLoadingPanel.GetWebResourceUrl(Page, "Telerik.Web.UI.Skins.Default.Ajax.loading.gif") %>' |
| style="border: 0px;" /> |
| </telerik:RadAjaxLoadingPanel> |
| <telerik:RadAjaxPanel ID="ajaxPanel" runat="server" Width="100%"> |
| <table style="width: 100%;"> |
| <tr> |
| <td align="left" valign="top"> |
| </td> |
| <td align="left" valign="top"> |
| <table style="width: 100%;"> |
| <tr> |
| <td align="left" valign="top" style="width: 150px;"> |
| Steps: |
| </td> |
| <td align="left" valign="top"> |
| <asp:Label ID="labelStep" runat="server" Text="1. Form(s)" /> |
| </td> |
| </tr> |
| <tr> |
| <td align="left" valign="top" style="width: 150px;"> |
| <telerik:RadTabStrip ID="tabWizard" runat="server" MultiPageID="multiPageWizard" |
| Orientation="VerticalLeft" SelectedIndex="0" Skin="Office2007" OnTabClick="tabWizard_TabClick" |
| CausesValidation="False"> |
| <Tabs> |
| <telerik:RadTab runat="server" PageViewID="pageForm" Text="1. Form(s)" Selected="true"> |
| </telerik:RadTab> |
| <telerik:RadTab runat="server" PageViewID="pageDescription" Text="2. Details"> |
| </telerik:RadTab> |
| <telerik:RadTab runat="server" PageViewID="pageFinish" Text="3. Finish"> |
| </telerik:RadTab> |
| </Tabs> |
| </telerik:RadTabStrip> |
| </td> |
| <td align="left" valign="top"> |
| <telerik:RadMultiPage ID="multiPageWizard" runat="server" SelectedIndex="0"> |
| <telerik:RadPageView ID="pageForm" runat="server" Width="100%"> |
| <table style="width: 100%;"> |
| <tr> |
| <td align="left" valign="top"> |
| <telerik:RadUpload ID="uploadForms" runat="server" /> |
| </td> |
| <td> |
| </td> |
| </tr> |
| <tr> |
| <td align="left" valign="top"> |
| <asp:Button ID="btnFormNext" runat="server" CausesValidation="False" |
| OnClick="btnNext_Click" Text="Next" /> |
| </td> |
| <td align="left" valign="top"> |
| </td> |
| </tr> |
| </table> |
| </telerik:RadPageView> |
| <telerik:RadPageView ID="pageDescription" runat="server" Width="100%"> |
| <table style="width: 100%;"> |
| <tr> |
| <td align="left" valign="top"> |
| Form Title (Max 255 Chars): |
| </td> |
| <td align="left" valign="top"> |
| <telerik:RadTextBox ID="textTitle" runat="server" MaxLength="255"> |
| </telerik:RadTextBox> |
| <asp:RequiredFieldValidator ID="valTitle" runat="server" ControlToValidate="textTitle" |
| ErrorMessage="Form Title is a required field">*</asp:RequiredFieldValidator> |
| </td> |
| </tr> |
| <tr> |
| <td align="left" valign="top"> |
| Form Description: |
| </td> |
| <td align="left" valign="top"> |
| <telerik:RadTextBox ID="textDescription" runat="server" Height="150px" TextMode="MultiLine"> |
| </telerik:RadTextBox> |
| <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ControlToValidate="textDescription" |
| ErrorMessage="Form Description is a required field">*</asp:RequiredFieldValidator> |
| </td> |
| </tr> |
| <tr> |
| <td align="left" valign="top"> |
| Owner Name: |
| </td> |
| <td align="left" valign="top"> |
| <telerik:RadTextBox ID="textOwnerName" runat="server"> |
| </telerik:RadTextBox> |
| </td> |
| </tr> |
| <tr> |
| <td align="left" valign="top"> |
| Owner Email: |
| </td> |
| <td align="left" valign="top"> |
| <telerik:RadMaskedTextBox ID="textOwnerEmail" runat="server"> |
| </telerik:RadMaskedTextBox> |
| </td> |
| </tr> |
| <tr> |
| <td align="left" valign="top"> |
| </td> |
| <td align="left" valign="top"> |
| <asp:ValidationSummary ID="valSummary" runat="server" /> |
| </td> |
| </tr> |
| <tr> |
| <td align="left" valign="top"> |
| <asp:Button ID="btnDetailBack" runat="server" Text="Back" |
| OnClick="btnBack_Click" CausesValidation="False" /> |
| </td> |
| <td align="left" valign="top"> |
| <asp:Button ID="btnDetailNext" runat="server" Text="Next" OnClick="btnNext_Click" /> |
| </td> |
| </tr> |
| </table> |
| </telerik:RadPageView> |
| <telerik:RadPageView ID="pageFinish" runat="server" Width="100%"> |
| The following Form(s) is ready to be added: |
| <br /> |
| <table style="width: 100%;"> |
| <tr> |
| <td align="left" valign="top" style="width: 150px;"> |
| Title: |
| </td> |
| <td align="left" valign="top"> |
| <asp:Label ID="labelTitle" runat="server" /> |
| </td> |
| </tr> |
| <tr> |
| <td align="left" valign="top" style="width: 150px;"> |
| Description: |
| </td> |
| <td align="left" valign="top"> |
| <asp:Label ID="labelDescription" runat="server" /> |
| </td> |
| </tr> |
| <tr> |
| <td align="left" valign="top" style="width: 150px;"> |
| Form(s): |
| </td> |
| <td align="left" valign="top"> |
| <asp:Label ID="labelForms" runat="server" /> |
| </td> |
| </tr> |
| </table> |
| <br /> |
| To add the Form(s), click <span style="font-weight: bold">Finish</span>. To review |
| your changes, click <span style="font-weight: bold">Back</span>, or click <span style="font-weight: bold"> |
| Cancel</span> to return to the Forms homepage.<br /> |
| <table style="width: 100%;"> |
| <tr> |
| <td align="left" valign="top"> |
| <asp:Button ID="btnSummaryBack" runat="server" Text="Back" |
| OnClick="btnBack_Click" CausesValidation="False" /> |
| </td> |
| <td align="left" valign="top"> |
| <asp:Button ID="btnSummaryFinish" runat="server" Text="Finish" /> |
| </td> |
| <td align="left" valign="top"> |
| <asp:Button ID="btnSummaryCancel" runat="server" Text="Cancel" /> |
| </td> |
| </tr> |
| </table> |
| </telerik:RadPageView> |
| </telerik:RadMultiPage> |
| </td> |
| </tr> |
| </table> |
| </td> |
| </tr> |
| </table> |
| </telerik:RadAjaxPanel> |
| <telerik:RadFormDecorator ID="formDecorator" runat="server" Skin="Web20" /> |
| <telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server" Height="75px" |
| Width="75px"> |
| <img alt="Loading..." src='<%= RadAjaxLoadingPanel.GetWebResourceUrl(Page, "Telerik.Web.UI.Skins.Default.Ajax.loading.gif") %>' |
| style="border: 0px;" /> |
| </telerik:RadAjaxLoadingPanel> |
| <telerik:RadAjaxPanel ID="ajaxPanel" runat="server" Width="100%"> |
| <table style="width: 100%;"> |
| <tr> |
| <td align="left" valign="top"> |
| </td> |
| <td align="left" valign="top"> |
| <table style="width: 100%;"> |
| <tr> |
| <td align="left" valign="top" style="width: 150px;"> |
| Steps: |
| </td> |
| <td align="left" valign="top"> |
| <asp:Label ID="labelStep" runat="server" Text="1. Form(s)" /> |
| </td> |
| </tr> |
| <tr> |
| <td align="left" valign="top" style="width: 150px;"> |
| <telerik:RadTabStrip ID="tabWizard" runat="server" MultiPageID="multiPageWizard" |
| Orientation="VerticalLeft" SelectedIndex="0" Skin="Office2007" OnTabClick="tabWizard_TabClick" |
| CausesValidation="False"> |
| <Tabs> |
| <telerik:RadTab runat="server" PageViewID="pageForm" Text="1. Form(s)" Selected="true"> |
| </telerik:RadTab> |
| <telerik:RadTab runat="server" PageViewID="pageDescription" Text="2. Details"> |
| </telerik:RadTab> |
| <telerik:RadTab runat="server" PageViewID="pageFinish" Text="3. Finish"> |
| </telerik:RadTab> |
| </Tabs> |
| </telerik:RadTabStrip> |
| </td> |
| <td align="left" valign="top"> |
| <telerik:RadMultiPage ID="multiPageWizard" runat="server" SelectedIndex="0"> |
| <telerik:RadPageView ID="pageForm" runat="server" Width="100%"> |
| <table style="width: 100%;"> |
| <tr> |
| <td align="left" valign="top"> |
| <telerik:RadUpload ID="uploadForms" runat="server" /> |
| </td> |
| <td> |
| </td> |
| </tr> |
| <tr> |
| <td align="left" valign="top"> |
| <asp:Button ID="btnFormNext" runat="server" CausesValidation="False" |
| OnClick="btnNext_Click" Text="Next" /> |
| </td> |
| <td align="left" valign="top"> |
| </td> |
| </tr> |
| </table> |
| </telerik:RadPageView> |
| <telerik:RadPageView ID="pageDescription" runat="server" Width="100%"> |
| <table style="width: 100%;"> |
| <tr> |
| <td align="left" valign="top"> |
| Form Title (Max 255 Chars): |
| </td> |
| <td align="left" valign="top"> |
| <telerik:RadTextBox ID="textTitle" runat="server" MaxLength="255"> |
| </telerik:RadTextBox> |
| <asp:RequiredFieldValidator ID="valTitle" runat="server" ControlToValidate="textTitle" |
| ErrorMessage="Form Title is a required field">*</asp:RequiredFieldValidator> |
| </td> |
| </tr> |
| <tr> |
| <td align="left" valign="top"> |
| Form Description: |
| </td> |
| <td align="left" valign="top"> |
| <telerik:RadTextBox ID="textDescription" runat="server" Height="150px" TextMode="MultiLine"> |
| </telerik:RadTextBox> |
| <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ControlToValidate="textDescription" |
| ErrorMessage="Form Description is a required field">*</asp:RequiredFieldValidator> |
| </td> |
| </tr> |
| <tr> |
| <td align="left" valign="top"> |
| Owner Name: |
| </td> |
| <td align="left" valign="top"> |
| <telerik:RadTextBox ID="textOwnerName" runat="server"> |
| </telerik:RadTextBox> |
| </td> |
| </tr> |
| <tr> |
| <td align="left" valign="top"> |
| Owner Email: |
| </td> |
| <td align="left" valign="top"> |
| <telerik:RadMaskedTextBox ID="textOwnerEmail" runat="server"> |
| </telerik:RadMaskedTextBox> |
| </td> |
| </tr> |
| <tr> |
| <td align="left" valign="top"> |
| </td> |
| <td align="left" valign="top"> |
| <asp:ValidationSummary ID="valSummary" runat="server" /> |
| </td> |
| </tr> |
| <tr> |
| <td align="left" valign="top"> |
| <asp:Button ID="btnDetailBack" runat="server" Text="Back" |
| OnClick="btnBack_Click" CausesValidation="False" /> |
| </td> |
| <td align="left" valign="top"> |
| <asp:Button ID="btnDetailNext" runat="server" Text="Next" OnClick="btnNext_Click" /> |
| </td> |
| </tr> |
| </table> |
| </telerik:RadPageView> |
| <telerik:RadPageView ID="pageFinish" runat="server" Width="100%"> |
| The following Form(s) is ready to be added: |
| <br /> |
| <table style="width: 100%;"> |
| <tr> |
| <td align="left" valign="top" style="width: 150px;"> |
| Title: |
| </td> |
| <td align="left" valign="top"> |
| <asp:Label ID="labelTitle" runat="server" /> |
| </td> |
| </tr> |
| <tr> |
| <td align="left" valign="top" style="width: 150px;"> |
| Description: |
| </td> |
| <td align="left" valign="top"> |
| <asp:Label ID="labelDescription" runat="server" /> |
| </td> |
| </tr> |
| <tr> |
| <td align="left" valign="top" style="width: 150px;"> |
| Form(s): |
| </td> |
| <td align="left" valign="top"> |
| <asp:Label ID="labelForms" runat="server" /> |
| </td> |
| </tr> |
| </table> |
| <br /> |
| To add the Form(s), click <span style="font-weight: bold">Finish</span>. To review |
| your changes, click <span style="font-weight: bold">Back</span>, or click <span style="font-weight: bold"> |
| Cancel</span> to return to the Forms homepage.<br /> |
| <table style="width: 100%;"> |
| <tr> |
| <td align="left" valign="top"> |
| <asp:Button ID="btnSummaryBack" runat="server" Text="Back" |
| OnClick="btnBack_Click" CausesValidation="False" /> |
| </td> |
| <td align="left" valign="top"> |
| <asp:Button ID="btnSummaryFinish" runat="server" Text="Finish" /> |
| </td> |
| <td align="left" valign="top"> |
| <asp:Button ID="btnSummaryCancel" runat="server" Text="Cancel" /> |
| </td> |
| </tr> |
| </table> |
| </telerik:RadPageView> |
| </telerik:RadMultiPage> |
| </td> |
| </tr> |
| </table> |
| </td> |
| </tr> |
| </table> |
| </telerik:RadAjaxPanel> |

