or
protected
override
void
Page_Load(
object
sender, EventArgs e)
{
base
.Page_Load(sender, e);
windowsManager.MinimizeZoneID = minimizeZone.ClientID;
windowsManager.RestrictionZoneID = viewPane.ClientID;
}
public
void
OpenWindow(
string
name)
{
RadWindow window =
new
RadWindow();
window.ID = name;
window.ContentTemplate = Page.LoadTemplate(
"~/ControlPanel/Views/"
+ name +
".ascx"
);
windowsManager.Windows.Add(window);
window.VisibleOnPageLoad =
true
;
}
<
div
id
=
"viewPane"
runat
=
"server"
class
=
"cellDiv"
style
=
"height:100%;"
>
<
telerik:RadWindowManager
ID
=
"windowsManager"
runat
=
"server"
Behaviors
=
"Default"
EnableShadow
=
"true"
>
</
telerik:RadWindowManager
>
<
div
id
=
"minimizeZone"
runat
=
"server"
class
=
"minimizeZone"
>
</
div
>
</
div
>
if
(txtParentGridID.Text !=
string
.Empty)
{
string
cmbZipHandlerName = txtParentGridID.Text +
"_cmbZip_SelectedIndexChanged"
;
string
script =
"function "
+ cmbZipHandlerName +
"(sender, args) {"
+
"var grd = $telerik.findGrid('"
+ txtParentGridID.Text +
"', null);"
+
"ZipAutoFillCurrentEditForm(grd, args.get_item());"
+
"}"
;
// Set event handler
cmbZip.OnClientSelectedIndexChanged = cmbZipHandlerName;
// registering to the Page object works
ScriptManager.RegisterStartupScript(Page,
typeof
(Page), cmbZip.ClientID +
"_handler"
, script,
true
);
}
// These zip autofill related functions are separated in a script file
function
ZipAutoFillCurrentEditForm(grd, selectedItem) {
var
formItem;
formItem = GetCurrentFormItem(grd);
if
(formItem)
{
var
city;
var
state;
var
island;
var
county;
var
country;
city = FindInputInTemplateForm(formItem,
'txtCity'
);
state = FindInputInTemplateForm(formItem,
'txtState'
);
island = FindInputInTemplateForm(formItem,
'txtIsland'
);
county = FindInputInTemplateForm(formItem,
'txtCounty'
);
country = FindInputInTemplateForm(formItem,
'txtCountry'
);
FillZipFields(selectedItem, city, state, island, county, country);
}
}
// Get current form item of a grid
function
GetCurrentFormItem(grd) {
var
master = grd.get_masterTableView();
var
formItem;
if
(master.get_isItemInserted()) {
// insert mode
formItem = master.get_insertItem();
}
else
{
// @todo check Edit mode
// get_editItems() is blank
var
editItem = master.get_editItems()[0];
if
(editItem) {
formItem = editItem.get_editFormItem();
}
}
return
formItem;
}
/*
Looks for a HTML element (inputbox) for a given server control
- FormItem: HTML element of RadGrid's Insert/Edit form
- ServerID: Server-side Control ID
*/
function
FindInputInTemplateForm(formItem, serverID) {
if
(formItem !=
null
) {
var
inputs = formItem.getElementsByTagName(
"input"
);
for
(
var
i = 0; i < inputs.length; i++) {
var
input = inputs[i];
// test with city
if
(input.id.indexOf(serverID) < 0)
continue
;
if
(input.type && input.type ==
"text"
) {
return
input;
}
}
}
}
/*
Full all of the address fields that are dependent on zip code
- selected: selected item (RadComboBoxItem object)
- city, state, island, county, country: respective input element
*/
function
FillZipFields(selected, city, state, island, county, country) {
if
(selected !=
null
) {
var
attrs = selected.get_attributes();
city.value = attrs.getAttribute(
'City'
);
state.value = attrs.getAttribute(
'State'
);
island.value = attrs.getAttribute(
'Island'
);
county.value = attrs.getAttribute(
'County'
);
country.value = attrs.getAttribute(
'Country'
);
}
}
<
telerik:RadGrid
ID
=
"RadGrid1"
runat
=
"server"
EnableTheming
=
"false"
CssClass
=
"myClass"
AllowPaging
=
"False"
OnNeedDataSource
=
"RadGrid1_NeedDataSource"
BorderStyle
=
"None"
style
=
"outline:none;"
EnableEmbeddedSkins
=
"false"
>
<
MasterTableView
DataKeyNames
=
"ID"
ShowHeader
=
"false"
ShowFooter
=
"false"
HierarchyDefaultExpanded
=
"true"
CommandItemDisplay
=
"None"
>
<
ItemTemplate
>
</
ItemTemplate
>
<
NestedViewTemplate
>
<
telerik:RadGrid
ID
=
"RadGrid2"
runat
=
"server"
EnableTheming
=
"false"
CssClass
=
"myClass"
EnableEmbeddedSkins
=
"false"
AllowPaging
=
"False"
OnNeedDataSource
=
"RadGrid2_NeedDataSource"
BorderStyle
=
"None"
OnItemDataBound
=
"RadGrid2_ItemDataBound"
style
=
"outline:none;"
>
<
MasterTableView
ShowHeader
=
"false"
ShowFooter
=
"false"
ShowGroupFooter
=
"false"
HierarchyDefaultExpanded
=
"false"
CommandItemDisplay
=
"None"
>
<
ItemTemplate
>
<
table
style="font-size:11px; width:100%;border: .1em solid #000000;table-layout: fixed; padding-left: 0px;
padding-right: 0px;">
<
tr
>
<
td
align
=
"center"
style
=
"width:40px;border: .1em solid #000000;"
">
<
asp:Label
ID
=
"lblRowNumber"
runat
=
"server"
/></
td
>
<
td
align
=
"center"
style
=
"width:70px;border: .1em solid #000000;"
>
<%# DataBinder.Eval(Container.DataItem,"CreationDate") %></
td
>
<
td
align
=
"center"
style
=
"width:50px;border: .1em solid #000000;"
>
<%# DataBinder.Eval(Container.DataItem, "Number")%></
td
>
<
td
align
=
"center"
style
=
"width:150px;border: .1em solid #000000;"
>
<
asp:Repeater
ID
=
"Repeater3"
runat
=
"server"
DataSource='<%# Eval("Owners") %>'>
<
ItemTemplate
>
<%# DataBinder.Eval(Container.DataItem, "CertificateNumber")%>
<%# DataBinder.Eval(Container.DataItem, "IssuedBy")%>
<%# DataBinder.Eval(Container.DataItem, "WhenIssued")%>
<%# DataBinder.Eval(Container.DataItem,"LegalObject")%>
<%# DataBinder.Eval(Container.DataItem, "individual.FIO")%>
<%# DataBinder.Eval(Container.DataItem, "legalEntity.Title")%>
<%# DataBinder.Eval(Container.DataItem, "legalEntity.INN")%>
<%# DataBinder.Eval(Container.DataItem, "legalEntity.OGRN")%>
<%# DataBinder.Eval(Container.DataItem, "legalEntity.Address")%>
<%# DataBinder.Eval(Container.DataItem, "legalEntity.LegalAddress")%>
</
ItemTemplate
>
<
SeparatorTemplate
>
,
</
SeparatorTemplate
>
</
asp:Repeater
>
</
td
>
</
tr
>
</
table
>
</
ItemTemplate
>
</
MasterTableView
>
<
ClientSettings
EnableAlternatingItems
=
"false"
>
<
Selecting
AllowRowSelect
=
"False"
/>
</
ClientSettings
>
</
telerik:RadGrid
>
</
NestedViewTemplate
>
</
MasterTableView
>
<
ClientSettings
EnableAlternatingItems
=
"false"
Scrolling-AllowScroll
=
"false"
>
<
Selecting
AllowRowSelect
=
"False"
/>
</
ClientSettings
>
</
telerik:RadGrid
>