or
<
telerik:RadAjaxLoadingPanel
ID
=
"RadAjaxLoadingPanel1"
runat
=
"server"
Height
=
"75px"
Width
=
"75px"
Transparency
=
"50"
>
<
img
alt
=
"Loading..."
src='<%= RadAjaxLoadingPanel.GetWebResourceUrl(Page, "Telerik.Web.UI.Skins.Default.Ajax.loading.gif") %>' style="border:0;" />
</
telerik:RadAjaxLoadingPanel
>
<
telerik:RadGrid
ID
=
"RadGrid1"
AllowMultiRowSelection
=
"true"
AllowMultiRowEdit
=
"true"
Skin
=
"WebBlue"
runat
=
"server"
AllowAutomaticDeletes
=
"True"
AllowAutomaticInserts
=
"True"
Width
=
"97%"
PageSize
=
"14"
AllowAutomaticUpdates
=
"True"
AllowPaging
=
"True"
AutoGenerateColumns
=
"False"
OnNeedDataSource
=
"RadGrid1_NeedDataSource"
ShowStatusBar
=
"true"
>
<
PagerStyle
Mode
=
"Slider"
/>
<
ClientSettings
>
<
Selecting
AllowRowSelect
=
"true"
/>
</
ClientSettings
>
<
MasterTableView
CommandItemDisplay
=
"Top"
AutoGenerateColumns
=
"False"
Width
=
"100%"
>
<
CommandItemTemplate
>
<
div
style
=
"padding:10px 0px;"
>
<
asp:Button
runat
=
"server"
ID
=
"btnAdd"
Text
=
"Add row"
OnClick
=
"btnAdd_Click"
/>
<
asp:LinkButton
ID
=
"LinkButton1"
OnClientClick
=
"javascript:return confirm('Delete all selected Products?')"
runat
=
"server"
CommandName
=
"DeleteSelected"
CausesValidation
=
"false"
><
img
style
=
"border:0px;vertical-align:middle;"
alt
=
""
src
=
"images/Delete.gif"
/> Delete</
asp:LinkButton
>
</
div
>
</
CommandItemTemplate
>
<
Columns
>
<
telerik:GridClientSelectColumn
HeaderStyle-Width
=
"40px"
/>
<
telerik:GridTemplateColumn
UniqueName
=
"pk_productid"
HeaderText
=
"Product Code"
>
<
FooterTemplate
>
Template footer</
FooterTemplate
>
<
FooterStyle
VerticalAlign
=
"Middle"
HorizontalAlign
=
"Center"
/>
<
ItemTemplate
>
<
telerik:RadComboBox
runat
=
"server"
ID
=
"RadComboBox1"
AutoPostBack
=
"true"
DataSourceID
=
"sqlproduct"
MarkFirstMatch
=
"true"
EnableLoadOnDemand
=
"True"
DataTextField
=
"pk_productid"
OnItemsRequested
=
"RadComboBox1_ItemsRequested"
OnClientItemsRequested
=
"UpdateItemCountField"
OnDataBound
=
"RadComboBox1_DataBound"
OnItemDataBound
=
"RadComboBox1_ItemDataBound"
HighlightTemplatedItems
=
"true"
Height
=
"140px"
Width
=
"220px"
DropDownWidth
=
"420px"
OnSelectedIndexChanged
=
"OnSelectedIndexChangedHandler"
>
<
HeaderTemplate
>
<
ul
>
<
li
class
=
"col1"
>Product Code</
li
>
<
li
class
=
"col2"
>Description</
li
>
</
ul
>
</
HeaderTemplate
>
<
ItemTemplate
>
<
ul
>
<
li
class
=
"col1"
>
<%#DataBinder.Eval(Container.DataItem, "pk_productid")%>
</
li
>
<
li
class
=
"col2"
>
<%#DataBinder.Eval(Container.DataItem, "descript")%></
li
>
</
ul
>
</
ItemTemplate
>
<
FooterTemplate
>
A total of
<
asp:Literal
runat
=
"server"
ID
=
"RadComboItemsCount"
/>
items
</
FooterTemplate
>
</
telerik:RadComboBox
>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridTemplateColumn
HeaderText
=
"Quantity"
SortExpression
=
"prQty"
UniqueName
=
"prqty"
EditFormColumnIndex
=
"1"
>
<
HeaderStyle
Width
=
"80px"
/>
<
ItemTemplate
>
<
asp:TextBox
runat
=
"server"
ID
=
"txtprqty"
Text='<%# Bind("prQty", "{0:#.##}") %>'></
asp:TextBox
>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
><
br
/>
</
div
>
</
div
>
<
asp:SqlDataSource
ID
=
"sqlds2"
runat
=
"server"
ConnectionString="<%$ ConnectionStrings:conDB %>"
SelectCommand="SELECT fk_productID,prqty from tblPurchaserequest where docnum=0">
</
asp:SqlDataSource
>
<
asp:SqlDataSource
ID
=
"sqlProduct"
runat
=
"server"
ConnectionString="<%$ ConnectionStrings:conDB %>"
SelectCommand="SELECT TOP 5 pk_productID,descript from tblProduct">
</
asp:SqlDataSource
>
<
script
type
=
"text/javascript"
>
function UpdateItemCountField(sender, args) {
//set the footer text
sender.get_dropDownElement().lastChild.innerHTML = "A total of " + sender.get_items().get_count() + " items";
}
</
script
>
Protected
Sub
RadComboBox1_DataBound(
ByVal
sender
As
Object
,
ByVal
e
As
EventArgs)
'set the initial footer label
CType
(cmbsite.Footer.FindControl(
"RadComboItemsCount"
), Literal).Text = Convert.ToString(cmbsite.Items.Count)
End
Sub
Protected
Sub
RadComboBox1_ItemsRequested(
ByVal
sender
As
Object
,
ByVal
e
As
RadComboBoxItemsRequestedEventArgs)
Dim
sql
As
String
=
"SELECT * from tblProduct WHERE pk_productID LIKE '%"
+ e.Text +
"%' or descript LIKE '%"
+ e.Text +
"%'"
sqlProduct.SelectCommand = sql
Dim
comboBox
As
RadComboBox =
DirectCast
(sender, RadComboBox)
comboBox.DataBind()
End
Sub
Protected
Sub
RadComboBox1_ItemDataBound(
ByVal
sender
As
Object
,
ByVal
e
As
RadComboBoxItemEventArgs)
e.Item.Text = (
DirectCast
(e.Item.DataItem, DataRowView))(
"pk_productID"
).ToString()
e.Item.Value = (
DirectCast
(e.Item.DataItem, DataRowView))(
"descript"
).ToString()
End
Sub
Protected
Sub
OnSelectedIndexChangedHandler(
ByVal
sender
As
Object
,
ByVal
e
As
RadComboBoxSelectedIndexChangedEventArgs)
Session(
"pk_productid"
) = e.Value
End
Sub
Protected
Sub
RadGrid1_NeedDataSource(
ByVal
source
As
Object
,
ByVal
e
As
Telerik.Web.UI.GridNeedDataSourceEventArgs)
'Bind the grid to the source
RadGrid1.DataSource = GetData
If
IsPostBack
Then
ViewState(
"dt"
) = dt
dt =
CType
(ViewState(
"dt"
), DataTable)
RadGrid1.DataSource = dt
End
If
End
Sub
Protected
Property
GetData()
As
DataTable
Get
If
ViewState(
"dt"
)
Is
Nothing
Then
dt.Columns.Add(
"pk_productid"
,
GetType
(
String
))
dt.Columns.Add(
"prqty"
,
GetType
(Int32))
dt.Rows.Add(
"-"
, 0)
ViewState(
"dt"
) = dt
Else
dt =
DirectCast
(ViewState(
"dt"
), DataTable)
End
If
Return
dt
End
Get
Set
(
ByVal
value
As
DataTable)
'Add the source to viewstate
ViewState(
"dt"
) = value
End
Set
End
Property
Protected
Sub
btnAdd_Click(
ByVal
sender
As
Object
,
ByVal
e
As
EventArgs)
dt =
CType
(ViewState(
"dt"
), DataTable)
For
Each
dataItem
As
GridDataItem
In
RadGrid1.Items
dt.Rows(dataItem.ItemIndex)(
"pk_productid"
) =
CType
(dataItem(
"pk_productid"
).FindControl(
"RadComboBox1"
), RadComboBox).SelectedItem
dt.Rows(dataItem.ItemIndex)(
"prqty"
) =
CType
(dataItem(
"prqty"
).FindControl(
"txtprqty"
), TextBox).Text
Next
ViewState(
"dt"
) = AddRow(dt)
RadGrid1.Rebind()
End
Sub
Private
Function
AddRow(
ByVal
dt
As
DataTable)
As
DataTable
Dim
dr
As
DataRow = dt.NewRow
dr(0) =
"-"
dr(1) = 0
dt.Rows.Add(dr)
Return
dt
End
Function
<
telerik:RadWindow
EnableShadow
=
"true"
ShowContentDuringLoad
=
"false"
runat
=
"server"
ReloadOnShow
=
"true"
Title
=
"Standard Text: Add Observation."
OpenerElementID
=
"lnkObservationsText"
Behaviors
=
"None"
VisibleStatusbar
=
"false"
EnableViewState
=
"true"
ID
=
"rdWndObservationText"
Skin
=
"Web20"
Modal
=
"true"
Width
=
"600"
>
<
ContentTemplate
>
<
div
class
=
"RadModalMainDiv"
>
<
div
>
<
p
>
Help text to go here....</
p
>
</
div
>
<
div
class
=
"divStandardTextButtonList"
>
<
asp:Button
ID
=
"btnObservationsTextSelect"
runat
=
"server"
Text
=
"Select"
CssClass
=
"btnStandardText"
OnClientClick
=
"return ObservationStandardText_Confirm()"
/>
<
asp:Button
ID
=
"btnObservationsTextCancel"
runat
=
"server"
Text
=
"Cancel"
CssClass
=
"btnStandardText"
/>
</
div
>
<
asp:Panel
ID
=
"pnl1"
runat
=
"server"
>
<
div
>
<
telerik:RadGrid
ID
=
"radGdObservationsText"
runat
=
"server"
AllowPaging
=
"True"
AllowSorting
=
"True"
AutoGenerateColumns
=
"False"
GridLines
=
"None"
PageSize
=
"10"
Width
=
"100%"
>
<
MasterTableView
CommandItemDisplay
=
"None"
Name
=
"ParentGrid"
>
<
Columns
>
<
telerik:GridClientSelectColumn
UniqueName
=
"ClientSelectColumn"
>
</
telerik:GridClientSelectColumn
>
<
telerik:GridBoundColumn
DataField
=
"description"
HeaderText
=
"Observation Description"
Visible
=
"true"
>
</
telerik:GridBoundColumn
>
</
Columns
>
</
MasterTableView
>
<
PagerStyle
Mode
=
"NextPrevAndNumeric"
/>
<
ClientSettings
>
<
Selecting
AllowRowSelect
=
"True"
/>
<
ClientEvents
OnRowSelected
=
"SetObservationStandardText"
/>
</
ClientSettings
>
</
telerik:RadGrid
>
</
div
>
</
asp:Panel
>
</
div
>
</
ContentTemplate
>
</
telerik:RadWindow
>
protected void PollDistribPointsTypeOptions_SelectedIndexChanged(object sender, EventArgs e)
{
RadioButtonList rbl = sender as RadioButtonList;
if(rbl.SelectedValue == "0" || rbl.SelectedValue=="2")
(RadGrid1.EditItems[0] as GridEditableItem)["Poll_DistribPointsType"].Controls[3].Visible = false;
}
protected
void
Page_Load(
object
sender, EventArgs e)
{
RadAjaxManager.GetCurrent(
this
.Page).ClientEvents.OnRequestStart =
"onRequestStart"
;
if
(!IsPostBack)
this
.DataBind();
}
<
telerik:RadButton
runat
=
"server"
ID
=
"export"
OnClientClicked
=
"ExportGrid"
/>
<
script
type
=
"text/javascript"
>
function ExportGrid(sender, args) {
var masterTable = $find("<%=RadGrid1.ClientID %>").get_masterTableView();
masterTable.exportToExcel();
}
function onRequestStart(sender, args) {
alert(args.get_eventTarget());
if (args.get_eventTarget().indexOf("btnExport") >= 0)
args.set_enableAjax(false);
}
</
script
>
args.get_eventTarget()
is always "ctl00$ContentPlaceHolder1$RadGrid1" and there is no indication if this is export or other action ( I send the insert command using custom button as well) do I can't disable the ajax .