<%@ Page Language="VB" AutoEventWireup="false" CodeBehind="Default.aspx.vb" Inherits="damnitsplitter._Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html
xmlns
=
"http://www.w3.org/1999/xhtml"
>
<
head
runat
=
"server"
>
<
title
></
title
>
<
style
type
=
"text/css"
>
html, body, form
{
width: 100%;
height: 100%;
margin: 0px;
padding: 0px;
overflow: hidden;
}
</
style
>
<
script
type
=
"text/javascript"
>
function OnClientResized(sender, args) {
var panewidth = $find("DefaultContents").get_width();
var paneheight = $find("DefaultContents").get_height();
var firstmenusplitter = $find($("#UserControl1Splitter").val());
firstmenusplitter.resize(panewidth, paneheight);
firstmenusplitter.repaint();
var secondmenusplitter = $find($("#UserControl2Splitter").val());
secondmenusplitter.resize(panewidth, paneheight);
secondmenusplitter.repaint();
}
function OnClientTabSelected(sender, args) {
var panewidth = $find("DefaultContents").get_width();
var paneheight = $find("DefaultContents").get_height();
var firstmenusplitter = $find($("#UserControl1Splitter").val());
firstmenusplitter.resize(panewidth, paneheight);
firstmenusplitter.repaint();
var secondmenusplitter = $find($("#UserControl2Splitter").val());
secondmenusplitter.resize(panewidth, paneheight);
secondmenusplitter.repaint();
}
function OnClientTabSelecting(sender, args) {
}
function OnRequestStart() {
var pageLoadWindow = $find("RadWindowPageLoad");
pageLoadWindow.show();
}
function OnResponseEnd() {
var pageLoadWindow = $find("RadWindowPageLoad");
pageLoadWindow.close();
}
function sendingdata() {
var radAjaxManager = $find("RadAjaxManager1");
radAjaxManager.ajaxRequest("damn it RadSplitter!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
}
</
script
>
</
head
>
<
body
>
<
form
id
=
"form1"
runat
=
"server"
>
<
div
style
=
"display: none;"
>
<
telerik:RadScriptManager
ID
=
"RadScriptManager1"
runat
=
"server"
>
<
scripts
>
<%--Needed for JavaScript IntelliSense in VS2010--%>
<%--For VS2008 replace RadScriptManager with ScriptManager--%>
<
asp:ScriptReference
Assembly
=
"Telerik.Web.UI"
Name
=
"Telerik.Web.UI.Common.Core.js"
/>
<
asp:ScriptReference
Assembly
=
"Telerik.Web.UI"
Name
=
"Telerik.Web.UI.Common.jQuery.js"
/>
<
asp:ScriptReference
Assembly
=
"Telerik.Web.UI"
Name
=
"Telerik.Web.UI.Common.jQueryInclude.js"
/>
</
scripts
>
</
telerik:RadScriptManager
>
<
telerik:RadWindow
ID
=
"RadWindowPageLoad"
AutoSize
=
"false"
Skin
=
"Simple"
Modal
=
"true"
Overlay
=
"true"
VisibleTitlebar
=
"true"
Title
=
"Processing..."
Behaviors
=
"None"
VisibleStatusbar
=
"false"
Width
=
"400"
Height
=
"200"
runat
=
"server"
Style="position: absolute;
z-index: 9000;">
<
contenttemplate
>
<
div
style
=
"margin-top: 55px; text-align: center; vertical-align: middle;"
>
<
asp:Image
ID
=
"ImagePageLoading"
runat
=
"server"
/>
</
div
>
</
contenttemplate
>
</
telerik:RadWindow
>
</
div
>
<
telerik:RadAjaxManager
ID
=
"RadAjaxManager1"
runat
=
"server"
>
<
clientevents
onrequeststart
=
"OnRequestStart"
onresponseend
=
"OnResponseEnd"
/>
<
ajaxsettings
>
<
telerik:AjaxSetting
AjaxControlID
=
"DefaultRadMenu"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"DefaultRadSplitter1"
UpdatePanelHeight
=
"100%"
/>
<
telerik:AjaxUpdatedControl
ControlID
=
"hiddenfields"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
<
telerik:AjaxSetting
AjaxControlID
=
"RadAjaxManager1"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"DefaultRadSplitter1"
UpdatePanelHeight
=
"100%"
/>
<
telerik:AjaxUpdatedControl
ControlID
=
"hiddenfields"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
</
ajaxsettings
>
</
telerik:RadAjaxManager
>
<
telerik:RadSplitter
runat
=
"server"
ID
=
"DefaultRadSplitter1"
Orientation
=
"Horizontal"
OnClientResized
=
"OnClientResized"
Width
=
"100%"
Height
=
"100%"
>
<
telerik:RadPane
runat
=
"server"
ID
=
"DefaultHeader"
Height
=
"60"
CssClass
=
"DefaultHeaderCss"
Scrolling
=
"None"
>
<
div
style
=
"height: 100%; width: 100%; background-color: Gray;"
>
<
telerik:RadMenu
ID
=
"DefaultRadMenu"
runat
=
"server"
EnableShadows
=
"true"
>
<
items
>
<
telerik:RadMenuItem
Text
=
"first menu"
Value
=
"first menu"
PostBack
=
"false"
>
<
Items
>
<
telerik:RadMenuItem
Text
=
"first menu1"
Value
=
"WebUserControl1"
/>
</
Items
>
</
telerik:RadMenuItem
>
<
telerik:RadMenuItem
IsSeparator
=
"true"
/>
<
telerik:RadMenuItem
Text
=
"second menu"
Value
=
"second menu"
PostBack
=
"false"
>
<
Items
>
<
telerik:RadMenuItem
Text
=
"second menu1"
Value
=
"WebUserControl2"
/>
</
Items
>
</
telerik:RadMenuItem
>
</
items
>
</
telerik:RadMenu
>
</
div
>
</
telerik:RadPane
>
<
telerik:RadPane
runat
=
"server"
ID
=
"DefaultTab"
Height
=
"30"
>
<
telerik:RadTabStrip
runat
=
"server"
ID
=
"DefaultRadTabStrip"
MultiPageID
=
"DefaultMultiPage"
OnClientTabSelected
=
"OnClientTabSelected"
OnClientTabSelecting
=
"OnClientTabSelecting"
>
<
tabtemplate
>
<
asp:Label
ID
=
"LabelTabName"
runat
=
"server"
Text='<%# DataBinder.Eval(Container, "Text") %>' />
<
span
class
=
"ie6shim"
></
span
>
</
tabtemplate
>
</
telerik:RadTabStrip
>
</
telerik:RadPane
>
<
telerik:RadPane
runat
=
"server"
ID
=
"DefaultContents"
Width
=
"100%"
Height
=
"100%"
Scrolling
=
"None"
>
<
telerik:RadMultiPage
runat
=
"server"
ID
=
"DefaultMultiPage"
>
</
telerik:RadMultiPage
>
</
telerik:RadPane
>
<
telerik:RadPane
runat
=
"server"
ID
=
"DefaultFooter"
Height
=
"30"
>
<
div
style
=
"height: 100%; width: 100%; background-color: Gray"
>
Footer</
div
>
</
telerik:RadPane
>
</
telerik:RadSplitter
>
<
asp:Panel
runat
=
"server"
ID
=
"hiddenfields"
>
<
asp:HiddenField
runat
=
"server"
ID
=
"UserControl1Splitter"
/>
<
asp:HiddenField
runat
=
"server"
ID
=
"UserControl2Splitter"
/>
</
asp:Panel
>
</
form
>
</
body
>
</
html
>
Imports Telerik.Web.UI
Partial Class _Default
Inherits System.Web.UI.Page
Private Sub RadMenuTopItemClick(sender As Object, e As Telerik.Web.UI.RadMenuEventArgs) Handles DefaultRadMenu.ItemClick
Try
If DefaultRadTabStrip.FindTabByText(e.Item.Text) Is Nothing Then
AddTab(e.Item.Text)
DefaultRadTabStrip.FindTabByText(e.Item.Text).Value = e.Item.Value
AddPageView(DefaultRadTabStrip.FindTabByText(e.Item.Text))
DefaultRadTabStrip.DataBind()
Else
DefaultRadTabStrip.FindTabByText(e.Item.Text).Selected = True
DefaultRadTabStrip.FindTabByText(e.Item.Text).PageView.Selected = True
End If
Catch ex As Exception
Throw ex
End Try
End Sub
Private Sub AddTab(ByVal tabName As String)
VisibleRadTabContent(True)
DefaultTab.Collapsed = False
If DefaultRadTabStrip.SelectedTab IsNot Nothing Then
DefaultRadTabStrip.SelectedTab.Selected = False
End If
Dim tab As RadTab = New RadTab
tab.Text = tabName
tab.Selected = True
DefaultRadTabStrip.Tabs.Add(tab)
End Sub
Private Sub AddPageView(ByVal tab As RadTab)
Dim pageView As RadPageView = New RadPageView
pageView.ID = tab.Value
pageView.Selected = True
pageView.Width = System.Web.UI.WebControls.Unit.Percentage(100)
pageView.Height = System.Web.UI.WebControls.Unit.Percentage(100)
DefaultMultiPage.PageViews.Add(pageView)
tab.PageViewID = pageView.ID
End Sub
Private Sub VisibleRadTabContent(value As Boolean)
DefaultRadTabStrip.Visible = value
DefaultRadTabStrip.Visible = value
End Sub
Protected Sub DefaultMultiPage_PageViewCreated(sender As Object, e As Telerik.Web.UI.RadMultiPageEventArgs) Handles DefaultMultiPage.PageViewCreated
Dim userControlName As String = e.PageView.ID + ".ascx"
Dim userControl As Control = Page.LoadControl(userControlName)
userControl.ID = e.PageView.ID & "_userControl"
e.PageView.Controls.Add(userControl)
End Sub
Protected Sub RadAjaxManager_AjaxRequest(ByVal sender As Object, ByVal e As Telerik.Web.UI.AjaxRequestEventArgs) Handles RadAjaxManager1.AjaxRequest
Dim a = e.Argument
End Sub
End Class
<%@ Control Language="vb" AutoEventWireup="false" CodeBehind="WebUserControl1.ascx.vb"
Inherits="damnitsplitter.WebUserControl1" %>
<
telerik:RadSplitter
runat
=
"server"
ID
=
"WebUserControl1RadSplitterWrap"
Orientation
=
"Horizontal"
Width
=
"100%"
Height
=
"100%"
>
<
telerik:RadPane
runat
=
"server"
ID
=
"WebUserControl1RadPaneMenu"
height
=
"30"
>
<
div
>
<
asp:Button
ID
=
"sendtodefaultpage"
runat
=
"server"
Text
=
"Button"
OnClientClick
=
"return sendingdata();"
/>
</
div
>
</
telerik:RadPane
>
<
telerik:RadPane
runat
=
"server"
ID
=
"WebUserControl1RadPane"
Width
=
"100%"
Height
=
"100%"
Scrolling
=
"Y"
>
<
div
style
=
"background-color: yellow"
>
start<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
WebUserControl 1 Content<
br
/>
end<
br
/>
</
div
>
</
telerik:RadPane
>
</
telerik:RadSplitter
>
Public Class WebUserControl1
Inherits System.Web.UI.UserControl
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim hiddenfield = DirectCast(Page.FindControl("UserControl1Splitter"), HiddenField)
hiddenfield.Value = WebUserControl1RadSplitterWrap.ClientID
End Sub
End Class
<%@ Control Language="vb" AutoEventWireup="false" CodeBehind="WebUserControl2.ascx.vb"
Inherits="damnitsplitter.WebUserControl2" %>
<
telerik:RadSplitter
runat
=
"server"
ID
=
"WebUserControl1RadSplitterWrap"
Orientation
=
"Horizontal"
Width
=
"100%"
Height
=
"100%"
>
<
telerik:RadPane
runat
=
"server"
ID
=
"WebUserControl1RadPane"
Scrolling
=
"None"
>
<
telerik:RadSplitter
runat
=
"server"
ID
=
"RadSplitter"
Orientation
=
"Vertical"
Width
=
"100%"
ResizeWithParentPane
=
"false"
Height
=
"100%"
>
<
telerik:RadPane
runat
=
"server"
ID
=
"RadPane1"
Scrolling
=
"None"
>
<
div
style
=
"background-color: Blue;"
>
WebUserControl 2 Content fisrt
</
div
>
</
telerik:RadPane
>
<
telerik:RadSplitBar
runat
=
"server"
>
</
telerik:RadSplitBar
>
<
telerik:RadPane
runat
=
"server"
ID
=
"RadPane2"
Scrolling
=
"Y"
>
<
div
style
=
"background-color: yellow"
>
start<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
WebUserControl 2 Content<
br
/>
end<
br
/>
</
div
>
</
telerik:RadPane
>
</
telerik:RadSplitter
>
</
telerik:RadPane
>
</
telerik:RadSplitter
>
Public Class WebUserControl2
Inherits System.Web.UI.UserControl
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim hiddenfield = DirectCast(Page.FindControl("UserControl2Splitter"), HiddenField)
hiddenfield.Value = RadSplitter.ClientID
End Sub
End Class
var CheckBoxNoExpiration = document.getElementById('<%= CheckBoxNoExpiration.ClientID %>');
var DatePicker = $find('<%= RadExpiryDate.ClientID %>');
var MandatoryMark = document.getElementById('<%= MandatoryMark.ClientID %>');
if (CheckBoxNoExpiration != null) {
if (CheckBoxNoExpiration.checked) {
if (MandatoryMark != null)
MandatoryMark.style.display = 'none';
DatePicker.get_dateInput().disable();
DatePicker.get_dateInput.onclick = function() { return false; };
//onKeyDown = "javascript:return false;"
DatePicker._popupButton.disabled = true;
DatePicker._popupButton.onclick = function() { return false; };
}
else {
if (MandatoryMark != null)
MandatoryMark.style.display = 'inline';
DatePicker.get_dateInput().enable();
DatePicker._popupButton.disabled = false;
DatePicker._popupButton.onclick = function() { DatePicker.togglePopup(); return false; };
}
}
function OnClientNodePopulatingHandler(sender, e) {
e.get_node().get_nodes().clear();
}
<td><telerik:RadComboBox ID="ddlCustomer" Runat="server" Width="245px" EnableEmbeddedSkins="false" Skin="Activity" CheckBoxes="true" AutoPostBack="true"></telerik:RadComboBox></td>
<td><telerik:RadComboBox ID="ddlLocation" Runat="server" Width="185px" EnableEmbeddedSkins="false" Skin="Activity" CheckBoxes="true" AutoPostBack="true"></telerik:RadComboBox></td>
<telerik:GridTemplateColumn HeaderText="Arrival" SortExpression="LocationArrival" HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center" AllowFiltering="false" UniqueName="LocationArrival">
<ItemTemplate>
<asp:CheckBox ID="chkLocationArrival" runat="server" AutoPostBack="True" OnCheckedChanged="chkLocationArrival_CheckedChanged"/>
</ItemTemplate>
</telerik:GridTemplateColumn>
If the Checkboxes = true is enabled the postbask fails and the chkLocationArrival_CheckedChanged never runs.
Whats going on
Andy
ltcs = ltcs.Where(l => Object.Equals(l.status,
null
));
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true"
CodeFile="ListToCountList.aspx.cs" Inherits="ListToCountList" %>
<%@ Register TagPrefix="rad" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %>
<%@ Register TagPrefix="HU" Namespace="HumanUse.CustomControls" %>
<
asp:Content
ID
=
"Content1"
ContentPlaceHolderID
=
"HeadContent"
runat
=
"Server"
>
<
style
type
=
"text/css"
>
.wait, .wait *
{
cursor: wait !important;
}
</
style
>
</
asp:Content
>
<
asp:Content
ID
=
"Content2"
ContentPlaceHolderID
=
"MainContent"
runat
=
"Server"
>
<
asp:ScriptManager
ID
=
"ScriptManager1"
runat
=
"server"
>
</
asp:ScriptManager
>
<
rad:RadAjaxManager
ID
=
"RadAjaxManager1"
runat
=
"server"
OnAjaxRequest
=
"RadAjaxManager1_AjaxRequest"
DefaultLoadingPanelID
=
"RadAjaxLoadingPanel1"
>
<
AjaxSettings
>
<
rad:AjaxSetting
AjaxControlID
=
"RadAjaxManager1"
>
<
UpdatedControls
>
<
rad:AjaxUpdatedControl
ControlID
=
"RadGrid1"
/>
</
UpdatedControls
>
</
rad:AjaxSetting
>
<
rad:AjaxSetting
AjaxControlID
=
"RadGrid1"
>
<
UpdatedControls
>
<
rad:AjaxUpdatedControl
ControlID
=
"RadGrid1"
LoadingPanelID
=
"RadAjaxLoadingPanel1"
/>
</
UpdatedControls
>
</
rad:AjaxSetting
>
</
AjaxSettings
>
</
rad:RadAjaxManager
>
<
rad:RadAjaxLoadingPanel
ID
=
"RadAjaxLoadingPanel1"
runat
=
"server"
Height
=
"430px"
Width
=
"924px"
Transparency
=
"0"
>
<
img
alt
=
"Loading..."
src='<%= RadAjaxLoadingPanel.GetWebResourceUrl(Page, "Telerik.Web.UI.Skins.Default.Ajax.loading.gif") %>'
style="border: 0;" />
</
rad:RadAjaxLoadingPanel
>
<
rad:RadCodeBlock
ID
=
"RadCodeBlock1"
runat
=
"server"
>
<
script
type
=
"text/javascript"
>
function ShowViewForm(id, rowIndex) {
var grid = $find("<%= RadGrid1.ClientID %>");
var rowControl = grid.get_masterTableView().get_dataItems()[rowIndex].get_element();
grid.get_masterTableView().selectItem(rowControl, true);
var manager = GetRadWindowManager();
var window1 = manager.getWindowByName("ListToCountForm");
window1.setUrl("ListToCountForm.aspx?ltcid=" + id);
window1.show();
return false;
}
function refreshGrid(arg, rebindOnly) {
alert('Your changes have been saved successfully');
if (!arg && !rebindOnly) {
$find("<%= RadAjaxManager1.ClientID %>").ajaxRequest("Rebind");
}
else if (rebindOnly) {
$find("<%= RadAjaxManager1.ClientID %>").ajaxRequest("RebindOnly");
}
else {
$find("<%= RadAjaxManager1.ClientID %>").ajaxRequest("RebindOnly");
}
}
</
script
>
</
rad:RadCodeBlock
>
<
rad:RadGrid
ID
=
"RadGrid1"
runat
=
"server"
PageSize
=
"25"
GridLines
=
"None"
AllowCustomPaging
=
"true"
AllowFilteringByColumn
=
"True"
AllowPaging
=
"True"
AllowSorting
=
"True"
EnableLinqExpressions
=
"false"
AutoGenerateColumns
=
"False"
>
<
MasterTableView
ClientDataKeyNames
=
"assignment_id"
AllowCustomPaging
=
"true"
AllowMultiColumnSorting
=
"true"
AllowCustomSorting
=
"true"
DataKeyNames
=
"assignment_id"
AutoGenerateColumns
=
"False"
AllowFilteringByColumn
=
"True"
>
<
Columns
>
<
rad:GridBoundColumn
HeaderText
=
"Segment"
AllowFiltering
=
"true"
AllowSorting
=
"true"
DataField
=
"segment_id"
UniqueName
=
"segment_id"
DataType
=
"System.Int32"
SortExpression
=
"segment_id"
CurrentFilterFunction
=
"EqualTo"
ShowFilterIcon
=
"false"
>
</
rad:GridBoundColumn
>
<
rad:GridBoundColumn
HeaderText
=
"Photo Date"
DataField
=
"photo_date"
DataType
=
"System.DateTime"
DataFormatString
=
"{0:d}"
SortExpression
=
"photo_date"
UniqueName
=
"date"
CurrentFilterFunction
=
"EqualTo"
ShowFilterIcon
=
"false"
>
</
rad:GridBoundColumn
>
<
HU:DistinctLTCValueDropDownFilterColumn
FilterControlWidth
=
"60"
HeaderText
=
"Initials"
AllowFiltering
=
"true"
DataField
=
"initials"
UniqueName
=
"initials"
SortExpression
=
"initials"
ShowFilterIcon
=
"false"
>
<
ItemTemplate
>
<%#Eval("initials") %>
</
ItemTemplate
>
</
HU:DistinctLTCValueDropDownFilterColumn
>
<
HU:DistinctLTCValueDropDownFilterColumn
FilterControlWidth
=
"60"
HeaderText
=
"Zone"
AllowFiltering
=
"true"
DataField
=
"zone"
UniqueName
=
"zone"
SortExpression
=
"zone"
ShowFilterIcon
=
"false"
>
<
ItemTemplate
>
<%#Eval("zone")%>
</
ItemTemplate
>
</
HU:DistinctLTCValueDropDownFilterColumn
>
<
HU:DistinctLTCValueDropDownFilterColumn
FilterControlWidth
=
"140"
HeaderText
=
"Field Office"
AllowFiltering
=
"true"
DataField
=
"FieldOffice"
UniqueName
=
"FieldOffice"
SortExpression
=
"FieldOffice"
ShowFilterIcon
=
"false"
>
<
ItemTemplate
>
<%#Eval("FieldOffice")%>
</
ItemTemplate
>
</
HU:DistinctLTCValueDropDownFilterColumn
>
<
HU:DistinctLTCValueDropDownFilterColumn
FilterControlWidth
=
"100"
HeaderText
=
"Status"
AllowFiltering
=
"true"
DataField
=
"status"
UniqueName
=
"status"
SortExpression
=
"status"
ShowFilterIcon
=
"false"
>
<
ItemTemplate
>
<%#Eval("status")%>
</
ItemTemplate
>
</
HU:DistinctLTCValueDropDownFilterColumn
>
<
rad:GridBoundColumn
HeaderText
=
"Last User"
DataField
=
"last_updated_user"
ItemStyle-VerticalAlign
=
"Top"
DataType
=
"System.String"
SortExpression
=
"last_updated_user"
AllowFiltering
=
"true"
AllowSorting
=
"true"
CurrentFilterFunction
=
"EqualTo"
ShowFilterIcon
=
"false"
>
</
rad:GridBoundColumn
>
<
rad:GridBoundColumn
HeaderText
=
"Last Update"
DataField
=
"last_update_date"
ItemStyle-VerticalAlign
=
"Top"
DataFormatString
=
"{0:MM/dd/yyyy}"
UniqueName
=
"last_update_date"
SortExpression
=
"last_update_date"
AllowSorting
=
"true"
CurrentFilterFunction
=
"EqualTo"
ShowFilterIcon
=
"false"
>
</
rad:GridBoundColumn
>
<
HU:DistinctLTCValueDropDownFilterColumn
FilterControlWidth
=
"50"
HeaderText
=
"Boating"
AllowFiltering
=
"true"
DataField
=
"boating"
UniqueName
=
"boating"
SortExpression
=
"boating"
ShowFilterIcon
=
"false"
>
<
ItemTemplate
>
<%#Eval("boating")%>
</
ItemTemplate
>
</
HU:DistinctLTCValueDropDownFilterColumn
>
<
rad:GridTemplateColumn
ItemStyle-VerticalAlign
=
"Top"
UniqueName
=
"TemplateEditColumn"
AllowFiltering
=
"True"
HeaderText
=
"Edit"
HeaderStyle-Wrap
=
"false"
>
<
ItemTemplate
>
<
asp:HyperLink
ID
=
"EditLink"
runat
=
"server"
Text
=
"Edit"
></
asp:HyperLink
>
</
ItemTemplate
>
<
FilterTemplate
>
<
asp:Button
runat
=
"server"
ID
=
"btnFilter"
Text
=
"Filter"
OnClick
=
"btn_Click"
/>
<
br
/>
<
asp:Button
runat
=
"server"
ID
=
"btnClearFilter"
Text
=
"Clear"
OnClick
=
"btn_ClearClick"
/>
</
FilterTemplate
>
</
rad:GridTemplateColumn
>
</
Columns
>
</
MasterTableView
>
</
rad:RadGrid
>
<
rad:RadWindowManager
ID
=
"RadWindowManager1"
runat
=
"server"
Skin
=
"Vista"
>
<
Windows
>
<
rad:RadWindow
Skin
=
"Vista"
ID
=
"ListToCountForm"
ClientIDMode
=
"Static"
RestrictionZoneID
=
"main"
ShowContentDuringLoad
=
"false"
runat
=
"server"
Title
=
"List To Count Form"
Width
=
"400px"
Height
=
"600px"
ReloadOnShow
=
"true"
Modal
=
"true"
/>
</
Windows
>
</
rad:RadWindowManager
>
</
asp:Content
>
using
System;
using
System.Collections.Generic;
using
System.Linq;
using
System.Web;
using
System.Web.UI;
using
System.Web.UI.WebControls;
using
Telerik.Web.UI;
using
HumanUse;
using
System.Configuration;
using
System.Text.RegularExpressions;
public
partial
class
ListToCountList : BasePage
{
protected
void
Page_Load(
object
sender, EventArgs e)
{
base
.CheckSecurity(
true
);
RadGrid1.GroupingSettings.CaseSensitive =
false
;
RadGrid1.ItemDataBound +=
new
Telerik.Web.UI.GridItemEventHandler(RadGrid1_ItemDataBound);
RadGrid1.NeedDataSource +=
new
GridNeedDataSourceEventHandler(RadGrid1_NeedDataSource);
}
protected
void
btn_Click(
object
sender, EventArgs e)
{
RadGrid1.Rebind();
}
protected
void
btn_ClearClick(
object
sender, EventArgs e)
{
RadGrid1.MasterTableView.FilterExpression =
""
;
foreach
(GridColumn c
in
RadGrid1.MasterTableView.Columns)
{
c.CurrentFilterValue =
""
;
}
RadGrid1.Rebind();
}
void
RadGrid1_NeedDataSource(
object
source, GridNeedDataSourceEventArgs e)
{
WCSAerialDataContext db =
new
WCSAerialDataContext(ConfigurationManager.ConnectionStrings[
"WCS_AerialConnectionString"
].ConnectionString);
IQueryable<vwLTC> ltcs = db.vwLTCs;
if
(ShouldApplySortFilterOrGroup())
{
if
(RadGrid1.MasterTableView.FilterExpression !=
""
)
{
foreach
(String s
in
RadGrid1.MasterTableView.FilterExpression.Replace(
"AND"
,
"~"
).Split(
'~'
))
{
string
column = s.Substring(2, s.IndexOf(
"]"
, 2) - 2);
string
value =
""
;
if
(column !=
"segment_id"
)
{
value = RadGrid1.MasterTableView.FilterExpression.Substring(RadGrid1.MasterTableView.FilterExpression.IndexOf(
"'"
) + 1, RadGrid1.MasterTableView.FilterExpression.IndexOf(
"'"
, RadGrid1.MasterTableView.FilterExpression.IndexOf(
"'"
) + 1) - (RadGrid1.MasterTableView.FilterExpression.IndexOf(
"'"
) + 1));
}
else
{
value = RadGrid1.MasterTableView.FilterExpression.Substring(RadGrid1.MasterTableView.FilterExpression.IndexOf(
"="
) + 2, (RadGrid1.MasterTableView.FilterExpression.IndexOf(
")"
, RadGrid1.MasterTableView.FilterExpression.IndexOf(
"="
) + 2) - (RadGrid1.MasterTableView.FilterExpression.IndexOf(
"="
) + 2)));
}
if
(value ==
"NULL"
)
value =
null
;
switch
(column)
{
case
"segment_id"
:
ltcs = ltcs.Where(l => l.segment_id ==
int
.Parse(value));
break
;
case
"photo_date"
:
ltcs = ltcs.Where(l => l.photo_date == DateTime.Parse(value));
break
;
case
"initials"
:
if
(value ==
null
)
{
ltcs = ltcs.Where(l => Object.Equals(l.initials,
null
));
}
else
{
value = value.Replace(
"%"
,
""
);
ltcs = ltcs.Where(l => l.initials == value);
}
break
;
case
"zone"
:
if
(value ==
null
)
{
ltcs = ltcs.Where(l => Object.Equals(l.zone,
null
));
}
else
{
value = value.Replace(
"%"
,
""
);
ltcs = ltcs.Where(l => l.zone == value);
}
break
;
case
"FieldOffice"
:
if
(value ==
null
)
{
ltcs = ltcs.Where(l => Object.Equals(l.FieldOffice,
null
));
}
else
{
value = value.Replace(
"%"
,
""
);
ltcs = ltcs.Where(l => l.FieldOffice == value);
}
break
;
case
"status"
:
if
(value ==
null
)
{
ltcs = ltcs.Where(l => Object.Equals(l.status,
null
));
}
else
{
value = value.Replace(
"%"
,
""
);
ltcs = ltcs.Where(l => l.status == value);
}
break
;
case
"last_updated_user"
:
if
(value ==
null
)
{
ltcs = ltcs.Where(l => Object.Equals(l.last_updated_user,
null
));
}
else
{
value = value.Replace(
"%"
,
""
);
ltcs = ltcs.Where(l => l.last_updated_user == value);
}
break
;
case
"last_update_date"
:
ltcs = ltcs.Where(l => l.last_update_date == DateTime.Parse(value));
break
;
case
"boating"
:
if
(value ==
null
)
{
ltcs = ltcs.Where(l => Object.Equals(l.boating,
null
));
}
else
{
value = value.Replace(
"%"
,
""
);
ltcs = ltcs.Where(l => l.boating == value);
}
break
;
}
}
}
if
(RadGrid1.MasterTableView.SortExpressions.Count > 0)
{
foreach
(GridSortExpression exp
in
RadGrid1.MasterTableView.SortExpressions)
{
switch
(exp.FieldName)
{
case
"segment_id"
:
if
(exp.SortOrder == GridSortOrder.Ascending)
ltcs = ltcs.OrderBy(l => l.segment_id);
else
if
(exp.SortOrder == GridSortOrder.Descending)
ltcs = ltcs.OrderByDescending(l => l.segment_id);
break
;
case
"photo_date"
:
if
(exp.SortOrder == GridSortOrder.Ascending)
ltcs = ltcs.OrderBy(l => l.photo_date);
else
if
(exp.SortOrder == GridSortOrder.Descending)
ltcs = ltcs.OrderByDescending(l => l.photo_date);
break
;
case
"initials"
:
if
(exp.SortOrder == GridSortOrder.Ascending)
ltcs = ltcs.OrderBy(l => l.initials);
else
if
(exp.SortOrder == GridSortOrder.Descending)
ltcs = ltcs.OrderByDescending(l => l.initials);
break
;
case
"zone"
:
if
(exp.SortOrder == GridSortOrder.Ascending)
ltcs = ltcs.OrderBy(l => l.zone);
else
if
(exp.SortOrder == GridSortOrder.Descending)
ltcs = ltcs.OrderByDescending(l => l.zone);
break
;
case
"FieldOffice"
:
if
(exp.SortOrder == GridSortOrder.Ascending)
ltcs = ltcs.OrderBy(l => l.FieldOffice);
else
if
(exp.SortOrder == GridSortOrder.Descending)
ltcs = ltcs.OrderByDescending(l => l.FieldOffice);
break
;
case
"status"
:
if
(exp.SortOrder == GridSortOrder.Ascending)
ltcs = ltcs.OrderBy(l => l.status);
else
if
(exp.SortOrder == GridSortOrder.Descending)
ltcs = ltcs.OrderByDescending(l => l.status);
break
;
case
"last_updated_user"
:
if
(exp.SortOrder == GridSortOrder.Ascending)
ltcs = ltcs.OrderBy(l => l.last_updated_user);
else
if
(exp.SortOrder == GridSortOrder.Descending)
ltcs = ltcs.OrderByDescending(l => l.last_updated_user);
break
;
case
"last_update_date"
:
if
(exp.SortOrder == GridSortOrder.Ascending)
ltcs = ltcs.OrderBy(l => l.last_update_date);
else
if
(exp.SortOrder == GridSortOrder.Descending)
ltcs = ltcs.OrderByDescending(l => l.last_update_date);
break
;
case
"boating"
:
if
(exp.SortOrder == GridSortOrder.Ascending)
ltcs = ltcs.OrderBy(l => l.boating);
else
if
(exp.SortOrder == GridSortOrder.Descending)
ltcs = ltcs.OrderByDescending(l => l.boating);
break
;
}
}
}
}
RadGrid1.VirtualItemCount = ltcs.Count();
RadGrid1.DataSource = ltcs.Skip(RadGrid1.CurrentPageIndex * RadGrid1.PageSize).Take(RadGrid1.PageSize);
}
public
bool
ShouldApplySortFilterOrGroup()
{
return
RadGrid1.MasterTableView.FilterExpression !=
""
|| RadGrid1.MasterTableView.SortExpressions.Count > 0;
}
void
RadGrid1_ItemDataBound(
object
sender, Telerik.Web.UI.GridItemEventArgs e)
{
if
(e.Item
is
GridDataItem)
{
string
next =
string
.Empty;
string
previous =
string
.Empty;
string
current =
string
.Empty;
current = e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex][
"assignment_id"
].ToString();
HyperLink editLink = (HyperLink)e.Item.FindControl(
"EditLink"
);
editLink.Attributes[
"href"
] =
"#"
;
editLink.Attributes[
"onclick"
] = String.Format(
"return ShowViewForm('{0}','{1}');"
, current, e.Item.ItemIndex);
}
}
protected
void
RadAjaxManager1_AjaxRequest(
object
sender, AjaxRequestEventArgs e)
{
if
(e.Argument ==
"Rebind"
)
{
RadGrid1.MasterTableView.SortExpressions.Clear();
RadGrid1.MasterTableView.GroupByExpressions.Clear();
RadGrid1.Rebind();
}
else
if
(e.Argument ==
"RebindAndNavigate"
)
{
RadGrid1.MasterTableView.SortExpressions.Clear();
RadGrid1.MasterTableView.GroupByExpressions.Clear();
RadGrid1.MasterTableView.CurrentPageIndex = RadGrid1.MasterTableView.PageCount - 1;
RadGrid1.Rebind();
}
else
if
(e.Argument ==
"RebindOnly"
)
{
RadGrid1.Rebind();
}
}
}
using
Telerik.Web.UI;
using
System.Data;
using
System.Web.UI;
using
System.Web.UI.WebControls;
using
System.Data.SqlClient;
using
System.Configuration;
using
System.Collections.Generic;
using
System;
namespace
HumanUse.CustomControls
{
/// <summary>
/// Summary description for DistinctValueDropDownFilterColumn
/// </summary>
public
class
DistinctLTCValueDropDownFilterColumn : GridTemplateColumn
{
public
enum
Orders { ASC, DESC }
public
Orders Order {
get
;
set
; }
public
bool
OrderResults {
get
;
set
; }
protected
override
void
SetupFilterControls(TableCell cell)
{
RadComboBox rcBox =
new
RadComboBox();
rcBox.ID =
"DDL"
+
this
.UniqueName;
rcBox.AutoPostBack =
this
.AutoPostBackOnFilter;
rcBox.Width =
this
.FilterControlWidth;
rcBox.SelectedIndexChanged += rcBox_SelectedIndexChanged;
WCSAerialDataContext db =
new
WCSAerialDataContext();
string
q = String.Format(
"SELECT DISTINCT {0} FROM vwLTC"
, DataField);
if
(OrderResults)
{
q +=
" ORDER BY "
+ DataField +
" "
+ Order.ToString();
}
IEnumerable<String> values = db.ExecuteQuery<String>(q);
rcBox.Items.Add(
new
RadComboBoxItem(
"No Filter"
,
""
));
foreach
(
string
s
in
values)
{
if
(String.IsNullOrWhiteSpace(s))
rcBox.Items.Add(
new
RadComboBoxItem(
""
,
"NULL"
));
else
rcBox.Items.Add(
new
RadComboBoxItem(s, s));
}
cell.Controls.Add(rcBox);
}
protected
override
void
SetCurrentFilterValueToControl(TableCell cell)
{
if
(!(
this
.CurrentFilterValue ==
""
))
{
((RadComboBox)cell.Controls[0]).Items.FindItemByValue(
this
.CurrentFilterValue).Selected =
true
;
}
}
protected
override
string
GetCurrentFilterValueFromControl(TableCell cell)
{
string
currentText = ((RadComboBox)cell.Controls[0]).SelectedItem.Text;
string
currentValue = ((RadComboBox)cell.Controls[0]).SelectedItem.Value;
this
.CurrentFilterFunction = (currentText !=
"No Filter"
) ? GridKnownFunction.EqualTo : GridKnownFunction.NoFilter;
return
currentValue;
}
private
void
rcBox_SelectedIndexChanged(
object
sender, RadComboBoxSelectedIndexChangedEventArgs e)
{
((GridFilteringItem)(((RadComboBox)sender).Parent.Parent)).FireCommandEvent(
"Filter"
,
new
Pair());
}
}
}
<
telerik:RadListBox
ID
=
"RadListbox1"
runat
=
"server"
EnableDragAndDrop
=
"True"
OnClientDragStart
=
"OnClientDragStart"
OnClientDragging
=
"OnClientDragging"
OnClientDropping
=
"OnClientDropping"
Width
=
"250px"
Height
=
"100px"
SelectionMode
=
"Single"
AllowDelete
=
"false"
>
<
ButtonSettings
ReorderButtons
=
"Common"
></
ButtonSettings
>
</
telerik:RadListBox
>
<
telerik:RadEditor
OnClientLoad
=
"OnClientLoad"
ID
=
"RadEditor1"
runat
=
"server"
SkinID
=
"DefaultSetOfTools"
Visible
=
"true"
EditModes
=
"Design"
Height
=
"500px"
Width
=
"650px"
StripFormattingOnPaste
=
"All"
ToolsFile
=
"~/App_GlobalResources/ToolsFile.xml"
SpellCheckSettings-AllowAddCustom
=
"false"
SpellCheckSettings-DictionaryLanguage
=
"es-ES"
SpellCheckSettings-DictionaryPath
=
"~/App_Data/RadSpell/"
ContentAreaCssFile
=
"EditorContentAreaStyles.css"
>
<
ImageManager
EnableImageEditor
=
"false"
ViewPaths
=
""
MaxUploadFileSize
=
"512000"
>
</
ImageManager
>
<
Modules
>
<
telerik:EditorModule
Name
=
"RadEditorStatistics"
Visible
=
"false"
Enabled
=
"true"
/>
<
telerik:EditorModule
Name
=
"RadEditorDomInspector"
Visible
=
"false"
Enabled
=
"true"
/>
<
telerik:EditorModule
Name
=
"RadEditorNodeInspector"
Visible
=
"false"
Enabled
=
"true"
/>
<
telerik:EditorModule
Name
=
"RadEditorHtmlInspector"
Visible
=
"false"
Enabled
=
"true"
/>
</
Modules
>