or
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="rttm.aspx.vb" Inherits="rttm" %>
<!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
>
</
head
>
<
body
>
<
form
id
=
"form1"
runat
=
"server"
>
<
div
>
<
telerik:RadScriptManager
runat
=
"server"
ID
=
"mgrJS"
AsyncPostBackTimeout
=
"600"
>
</
telerik:RadScriptManager
>
<
telerik:RadGrid
runat
=
"server"
ID
=
"rg"
AutoGenerateColumns
=
"False"
Width
=
"620px"
Skin
=
"Web20"
>
<
MasterTableView
HierarchyLoadMode
=
"ServerOnDemand"
Width
=
"620px"
TableLayout
=
"Auto"
DataKeyNames
=
"ID"
>
<
Columns
>
<
telerik:GridBoundColumn
HeaderText
=
"ID"
UniqueName
=
"ID"
DataField
=
"ID"
>
</
telerik:GridBoundColumn
>
<
telerik:GridImageColumn
UniqueName
=
"View"
ImageUrl
=
"App_Themes/BlueBT2009/Images/Inq.gif"
></
telerik:GridImageColumn
>
</
Columns
>
</
MasterTableView
>
<
FilterMenu
EnableImageSprites
=
"False"
>
</
FilterMenu
>
</
telerik:RadGrid
>
<
telerik:RadToolTipManager
ID
=
"RadToolTipManager1"
OffsetY
=
"-1"
HideEvent
=
"Default"
Width
=
"800px"
Height
=
"600px"
runat
=
"server"
EnableShadow
=
"true"
RelativeTo
=
"BrowserWindow"
Position
=
"Center"
OnAjaxUpdate
=
"Load_ToolTip"
Modal
=
"false"
ContentScrolling
=
"Auto"
AutoCloseDelay
=
"0"
ShowEvent
=
"OnClick"
>
</
telerik:RadToolTipManager
>
</
div
>
</
form
>
</
body
>
</
html
>
Partial
Class
rttm
Inherits
System.Web.UI.Page
Protected
Sub
rg_ItemDataBound(
ByVal
sender
As
Object
,
ByVal
e
As
Telerik.Web.UI.GridItemEventArgs)
Handles
rg.ItemDataBound
If
e.Item.ItemType = GridItemType.Item
OrElse
e.Item.ItemType = GridItemType.AlternatingItem
Then
Me
.RadToolTipManager1.TargetControls.Add(TryCast(e.Item, GridDataItem)(
"View"
).ClientID, TryCast(e.Item, GridDataItem)(
"ID"
).Text,
True
)
End
If
End
Sub
Protected
Sub
rg_NeedDataSource(
ByVal
sender
As
Object
,
ByVal
e
As
Telerik.Web.UI.GridNeedDataSourceEventArgs)
Handles
rg.NeedDataSource
Dim
dt
As
New
DataTable()
Dim
col
As
New
DataColumn(
"ID"
)
dt.Columns.Add(col)
Dim
row
As
DataRow = dt.NewRow
row(0) = 1
dt.Rows.Add(row)
row = dt.NewRow
row(0) = 2
dt.Rows.Add(row)
row = dt.NewRow
row(0) = 3
dt.Rows.Add(row)
Me
.rg.DataSource = dt
Session(
"rttm"
) = dt
End
Sub
Protected
Sub
Load_ToolTip(
ByVal
sender
As
Object
,
ByVal
args
As
ToolTipUpdateEventArgs)
Dim
invoiceDetails()
As
String
= args.Value.Split(
"_"
)
Dim
toAdd
As
UserControl = LoadUserControl(
"rttmdetails.ascx"
, invoiceDetails)
args.UpdatePanel.ContentTemplateContainer.Controls.Add(toAdd)
args.UpdatePanel.Update()
End
Sub
Private
Function
LoadUserControl(
ByVal
UserControlPath
As
String
,
ByVal
ParamArray
constructorParameters
As
Object
())
As
UserControl
Dim
constParamTypes
As
New
List(Of Type)()
For
Each
constParam
As
Object
In
constructorParameters
constParamTypes.Add(constParam.[
GetType
]())
Next
Dim
ctl
As
UserControl = TryCast(Page.LoadControl(UserControlPath), UserControl)
Dim
constructor
As
System.Reflection.ConstructorInfo = ctl.[
GetType
]().BaseType.GetConstructor(constParamTypes.ToArray())
If
constructor
Is
Nothing
Then
Throw
New
MemberAccessException(
"The requested constructor was not found on : "
& ctl.[
GetType
]().BaseType.ToString())
Else
constructor.Invoke(ctl, constructorParameters)
End
If
Return
ctl
End
Function
End
Class
<%@ Control Language="VB" AutoEventWireup="false" CodeFile="rttmDetails.ascx.vb" Inherits="rttmDetails" %>
<
telerik:RadGrid
ID
=
"rg"
runat
=
"server"
AutoGenerateColumns
=
"false"
Skin
=
"Web20"
AllowMultiRowSelection
=
"true"
>
<
MasterTableView
Name
=
"details"
DataKeyNames
=
"ID"
>
<
Columns
>
<
telerik:GridBoundColumn
HeaderText
=
"ID"
UniqueName
=
"ID"
DataField
=
"ID"
>
</
telerik:GridBoundColumn
>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
Partial
Class
rttmDetails
Inherits
System.Web.UI.UserControl
Private
_id
As
String
Public
Property
Identity()
As
String
Get
Return
(_id)
End
Get
Set
(
ByVal
value
As
String
)
_id = value
End
Set
End
Property
Private
_details
As
DataRow()
ReadOnly
Property
Details()
As
DataRow()
Get
Return
_details
End
Get
End
Property
Public
Sub
New
()
End
Sub
Public
Sub
New
(
ByVal
id
As
String
)
Dim
dt
As
DataTable =
CType
(Session(
"rttm"
), DataTable)
_id = id
_details = dt.
Select
(
"ID="
& id)
End
Sub
Protected
Sub
rgInvoice_NeedDataSource(
ByVal
sender
As
Object
,
ByVal
e
As
Telerik.Web.UI.GridNeedDataSourceEventArgs)
Handles
rg.NeedDataSource
Me
.rg.DataSource = Details
End
Sub
End
Class
.RadMenu .rmRootGroup .rmSelected:after
{
content
:
""
;
position
:
absolute
;
top
:
0px
;
left
:
40px
;
border-right
:
15px
solid
red
;
border-top
:
15px
solid
transparent
;
border-bottom
:
15px
solid
transparent
;
}
<telerik:RadScriptBlock ID=
"RadScriptBlock1"
runat=
"server"
>
<script type=
"text/javascript"
>
function
MenuOpenWindow(windowTitle) {
var
oWindow;
var
offsetElementBounds;
var
menu = $find(
"<%=menuEmp.ClientID%>"
);
var
menuItem = menu.findItemByValue(windowTitle).get_element();
//Closes the last window opened
if
(lastOpenedWindow) {
lastOpenedWindow.close();
lastOpenedWindow =
null
;
}
if
(windowTitle ==
"EmpProj"
) {
if
(lastWindowTitle !=
"EmpProj"
) {
oWindow = $find(
"<%=winEmpProj.ClientID%>"
);
oWindow.show();
if
(oWindow.get_offsetElementID()) {
offsetElementBounds = $telerik.getBounds($get(oWindow.get_offsetElementID()));
var
x = offsetElementBounds.x + (menuItem.offsetWidth / 3);
var
y = menuItem.offsetTop + offsetElementBounds.y - (menuItem.offsetHeight / 3);
oWindow.moveTo(x, y);
}
lastOpenedWindow = oWindow;
lastWindowTitle =
"EmpProj"
;
return
false
;
}
else
{
menuItem.set_selected(
false
);
lastWindowTitle =
null
;
}
}
}
</script>
</telerik:RadScriptBlock>
if
(lastWindowTitle !=
"EmpProj"
)
' else statement, I have the menuItem.set_selected(false);. According to http://www.telerik.com/help/aspnet-ajax/menu-radmenuitem-client-side.html, that should work, but I'm getting an error: @using System.Globalization
@using Telerik.Web.Mvc.UI
@{ Html.Telerik().TabStrip()
.Name("TabStrip")
.Items(tabstrip =>
{
tabstrip.Add()
.Text("ASP.NET MVC")
.ImageUrl("~/Content/Common/Icons/Suites/mvc.png")
.Content(@<
text
>
<
ul
>
<
li
>Pure ASP.NET MVC components</
li
>
<
li
>Completely Open Source</
li
>
<
li
>Exceptional Performance</
li
>
<
li
>Based on jQuery</
li
>
<
li
>Search Engine Optimized</
li
>
<
li
>Cross-browser support</
li
>
</
ul
>
</
text
>);
tabstrip.Add()
.Text("Silverlight")
.ImageUrl("~/Content/Common/Icons/Suites/sl.png")
.Content(@<
text
>
<
ul
>
<
li
>Built on Silverlight 3</
li
>
<
li
>RIA services support</
li
>
<
li
>Validation support</
li
>
<
li
>Out of browser support</
li
>
<
li
>The first commercial 3D chart</
li
>
<
li
>Free testing framework</
li
>
</
ul
>
</
text
>);
tabstrip.Add()
.Text("ASP.NET AJAX")
.ImageUrl("~/Content/Common/Icons/Suites/ajax.png")
.Content(@<
text
>
<
ul
>
<
li
>Built on top of Microsoft ASP.NET AJAX framework</
li
>
<
li
>Rich client-side capabilities; nearly identical client-side and server-side APIs</
li
>
<
li
>.NET 3.5 built-in support for LINQ, EntityDataSource, ADO.NET DataServices, WCF, etc</
li
>
<
li
>Performance optimization helper controls and HTTP compression</
li
>
<
li
>SharePoint and DotNetNuke Integration; ASP.NET MVC-ready</
li
>
<
li
>Wide cross-browser compatible and XHTML compliant</
li
>
</
ul
>
</
text
>);
tabstrip.Add()
.Text("OpenAccess ORM")
.ImageUrl("~/Content/Common/Icons/Suites/orm.png")
.Content(@<
text
>
<
ul
>
<
li
>Model First and Schema First approaches</
li
>
<
li
>Stored Procedures for Multiple Databases</
li
>
<
li
>Views for Multiple Databases</
li
>
<
li
>Generic Metadata Access and artificial fields API in the runtime</
li
>
<
li
>Support for Ado.Net Data Services and WCF</
li
>
<
li
>Support for LINQ, OQL, and SQL Languages</
li
>
</
ul
>
</
text
>);
tabstrip.Add()
.Text("Reporting")
.ImageUrl("~/Content/Common/Icons/Suites/rep.png")
.Content(@<
text
>
<
ul
>
<
li
>Excellent data presentation and analysis: Crosstabs, Charts, Tables, Lists</
li
>
<
li
>SubReports, Barcodes, Images, Shapes, and more</
li
>
<
li
>Revolutionary WYSIWYG design surface in Visual Studio</
li
>
<
li
>Easy conditional formatting, sorting, filtering, grouping</
li
>
<
li
>Powerful styling, data binging and data processing models</
li
>
<
li
>Significantly reduced development time through wizards and builders</
li
>
</
ul
>
</
text
>);
tabstrip.Add()
.Text("Sitefinity ASP.NET CMS")
.ImageUrl("~/Content/Common/Icons/Suites/sitefinity.png")
.Content(@<
text
>
<
ul
>
<
li
>Multi-lingual Content Integration</
li
>
<
li
>Workflow Engine</
li
>
<
li
>Document versioning</
li
>
<
li
>Permissions</
li
>
<
li
>Interface Localization</
li
>
<
li
>Wide cross-browser compatible and XHTML compliant</
li
>
</
ul
>
</
text
>);
})
.SelectedIndex(0)
.Render();
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
namespace WebRH2012.Controllers
{
using System.Linq;
using System.Web.Mvc;
using Models;
using System;
using Telerik.Web.Mvc.UI;
using Telerik.Web.Mvc;
using System.Data.Entity.Validation;
public partial class GridController : Controller
{
//[SourceCodeFile("EditableProduct (model)", "~/Models/EditableProduct.cs")]
//[SourceCodeFile("SessionProductRepository", "~/Models/SessionProductRepository.cs")]
//[SourceCodeFile("Date.ascx (editor)", "~/Views/Shared/EditorTemplates/Date.ascx")]
private readonly JSIEntities context = new JSIEntities();
public ActionResult ForeignKeyColumn()
{
return View(new GridModel(Statut.getAllStatut()));
}
[GridAction]
public ActionResult _ForeignKeyColumn()
{
return View(new GridModel(Statut.getAllStatut()));
}
[AcceptVerbs(HttpVerbs.Post)]
[GridAction]
public ActionResult _ForeignKeyColumnUpdateOrder(int id, int employeeId)
{
//var order = new ClientEditableOrder
//{
// OrderID = id,
// Employee = new NorthwindDataContext().Employees
// .Where(e => e.EmployeeID == employeeId)
// .Select(e => e.FirstName + " " + e.LastName).SingleOrDefault()
//};
//// Exclude "Employee" from the list of updated properties
//if (TryUpdateModel(order, null, null, new[] { "Employee" }))
//{
// SessionClientOrderRepository.Update(order);
//}
return View(new GridModel(Statut.getAllStatut()));
}
public ActionResult EditingAjax(GridEditMode? mode, GridButtonType? type, GridInsertRowPosition?
insertRowPosition)
{
ViewData["mode"] = mode ?? GridEditMode.InLine;
ViewData["type"] = type ?? GridButtonType.Text;
ViewData["insertRowPosition"] = insertRowPosition ?? GridInsertRowPosition.Top;
return View();
}
[GridAction]
public ActionResult _SelectAjaxEditing()
{
//return View(new GridModel(SessionProductRepository.All()));
return null;
}
//[AcceptVerbs(HttpVerbs.Post)]
//[CultureAwareAction]
//[GridAction]
//public ActionResult _SaveAjaxEditing(int id)
//{
// EditableProduct product = SessionProductRepository.One(p => p.ProductID == id);
// TryUpdateModel(product);
// SessionProductRepository.Update(product);
// return View(new GridModel(SessionProductRepository.All()));
//}
[AcceptVerbs(HttpVerbs.Post)]
//[CultureAwareAction]
[GridAction]
public ActionResult _InsertAjaxEditing(FormCollection form, string entityName, int id)
{
var result = new object();
var newObject = new object();
var model = new GridModel();
switch (entityName)
{
case "augmentations":
newObject = AUGMENTATIONS.FormCollectionToAugmentations(form, id);
//((AUGMENTATIONS)newObject).REF_CANDIDAT = id;
if (TryValidateModel((AUGMENTATIONS)newObject))
{
context.AUGMENTATIONS.Add(((AUGMENTATIONS)newObject));
context.SaveChanges();
}
model = new GridModel(CANDIDATS.getCandidatByID(id, context).getHistoAugmention());
break;
case "corange":
newObject = HISTO_MT_CARTE_ORANGE_CANDIDAT.FormCollectionToHistoMtCorange(form, id);
//((HISTO_MT_CARTE_ORANGE_CANDIDAT)newObject).REF_CANDIDAT = id;
if (TryValidateModel((HISTO_MT_CARTE_ORANGE_CANDIDAT)newObject))
{
context.HISTO_MT_CARTE_ORANGE_CANDIDAT.Add(((HISTO_MT_CARTE_ORANGE_CANDIDAT)newObject));
context.SaveChanges();
}
model = new GridModel(CANDIDATS.getCandidatByID(id, context).getHistoCorange());
break;
case "ndf":
newObject = CANDIDATS_NDF.FormCollectionToHistoMtCorange(form, id);
if (TryValidateModel((CANDIDATS_NDF)newObject))
{
context.CANDIDATS_NDF.Add(((CANDIDATS_NDF)newObject));
context.SaveChanges();
}
model = new GridModel(CANDIDATS.getCandidatByID(id, context).getHistoNdf());
break;
case "primes":
newObject = PRIMES.FormCollectionToHistoMtCorange(form, id);
if (TryValidateModel((PRIMES)newObject))
{
context.PRIMES.Add(((PRIMES)newObject));
context.SaveChanges();
}
model = new GridModel(CANDIDATS.getCandidatByID(id, context).getHistoPrime());
break;
}
return View(model);
//Create a new instance of the EditableProduct class.
//EditableProduct product = new EditableProduct();
//Perform model binding (fill the product properties and validate it).
//if (TryUpdateModel(product))
//{
// //The model is valid - insert the product.
// SessionProductRepository.Insert(product);
//}
////Rebind the grid
//return View(new GridModel(SessionProductRepository.All()));
}
//[AcceptVerbs(HttpVerbs.Post)]
//[GridAction]
//public ActionResult _DeleteAjaxEditing(int id)
//{
// //Find a customer with ProductID equal to the id action parameter
// EditableProduct product = SessionProductRepository.One(p => p.ProductID == id);
// if (product != null)
// {
// //Delete the record
// SessionProductRepository.Delete(product);
// }
// //Rebind the grid
// return View(new GridModel(SessionProductRepository.All()));
//}
}
}
<!DOCTYPE html>
<
html
>
<
head
>
<
title
>Outil RH </
title
>
<
meta
http-equiv
=
"X-UA-Compatible"
content
=
"IE=100"
/>
<
meta
http-equiv
=
"Content-Type"
content
=
"text/html; CHARSET=UTF-8 "
/>
<
link
href
=
"@Url.Content("
../../Content/jquery.contextMenu.css")"
rel
=
"stylesheet"
type
=
"text/css"
/>
<
link
href
=
"@Url.Content("
../../Content/themes/base/jquery.ui.all.css")"
rel
=
"stylesheet"
type
=
"text/css"
/>
<
link
href
=
"@Url.Content("
../../Content/StyleGridView.css")"
rel
=
"stylesheet"
type
=
"text/css"
/>
<
link
href
=
"@Url.Content("
../../Content/StyleRH.css")"
rel
=
"stylesheet"
type
=
"text/css"
/>
<
script
src
=
"@Url.Content("
../../Scripts/jquery-1.7.2.min.js")"></
script
>
@* <
script
src
=
"@Url.Content("
../../Scripts/jquery-1.5.1.min.js")"
type
=
"text/javascript"
></
script
>*@
<
script
src
=
"@Url.Content("
../../Scripts/jquery.ui.core.js")"
type
=
"text/javascript"
></
script
>
<
script
src
=
"../../Scripts/jquery.ui.widget.js"
></
script
>
<
script
src
=
"@Url.Content("
../../Scripts/jquery.ui.tabs.js")"
type
=
"text/javascript"
></
script
>
<
script
src
=
"@Url.Content("
../../Scripts/jquery-ui-1.8.11.min.js")"
type
=
"text/javascript"
></
script
>
<
script
src
=
"@Url.Content("
../../Scripts/jquery.editable-1.3.3.js")"
type
=
"text/javascript"
></
script
>
<
script
src
=
"@Url.Content("
../../Scripts/Script.js")"
type
=
"text/javascript"
></
script
>
<
script
src
=
"@Url.Content("
../../Scripts/jquery.contextMenu.js")"
type
=
"text/javascript"
></
script
>
<
script
src
=
"@Url.Content("
../../Scripts/jquery.validate.min.js")"
type
=
"text/javascript"
></
script
>
<
script
src
=
"@Url.Content("
../../Scripts/jquery.validate.unobtrusive.min.js")"
type
=
"text/javascript"
></
script
>
<
script
src
=
"@Url.Content("
../../Scripts/jquery.unobtrusive-ajax.min.js")"
type
=
"text/javascript"
></
script
>
<
link
href
=
"@Url.Content("
../../Content/2013.2.611/telerik.common.min.css")"
rel
=
"stylesheet"
/>
<
link
href
=
"@Url.Content("
../../Content/2013.2.611/telerik.vista.min.css")"
rel
=
"stylesheet"
/>
<
link
href
=
"@Url.Content("
../../Content/2013.2.611/telerik.rtl.min.css")"
rel
=
"stylesheet"
/>
<
script
type
=
"text/javascript"
>
$(document).ready(function () {
if (window.location.search.length == 0) {
if ($("#All_Candidats").val() <
1
)
$(".MenuInfo").hide("fast", function () { $(".MenuInfo").css("height", "0"); });
}
});
</script>
<
base
target
=
"_self"
/>
</
head
>
<
body
>
<
div
id
=
"Contenu"
>
@Html.Partial("header")
@RenderBody()
<
div
id
=
"footer"
>
</
div
>
</
div
>
</
body
>
</
html
>