Partial
Class Controls_DocumentInquiry_BatchDetails
Inherits ContentControl
Protected Overrides Sub OnPreRender(ByVal e As EventArgs)
MyBase.OnPreRender(e)
If Not IsPostBack Then
End If
If StageName <> "" Then
Dim dsScanMainBatches As DataSet = ScanMainData
Dim dsBatchMainBatches As DataSet = batchmainData
Dim dsStages As DataSet = AllStagesData
Dim drStage() As DataRow
For Each dt As DataTable In dsStages.Tables
drStage = dt.Select(
"StageID = " & StageID)
If drStage.Length > 0 Then
Exit For
End If
Next
LoadRootNodes(rtvBatches, TreeNodeExpandMode.ServerSideCallBack, StageName, drStage, dsScanMainBatches, dsBatchMainBatches)
End If
End Sub
Protected Sub Page_Load(ByVal source As Object, ByVal e As EventArgs)
End Sub
Protected Sub Page_Init(ByVal source As Object, ByVal e As EventArgs)
End Sub
Protected Sub rgBatchDetails_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles rgBatchDetails.SelectedIndexChanged
'Display the image
Dim strBatchNumber As String = rgBatchDetails.SelectedItems(0).Cells(2).Text
Dim strImageFile As String = rgBatchDetails.SelectedItems(0).Cells(3).Text
GridImageDetails.LoadData(
"Image.aspx?ImageLocation=C:\CMMain\CMData\Output\" & strBatchNumber & "\" & strImageFile)
End Sub
Protected Sub rtvBatches_NodeClick(ByVal sender As Object, ByVal e As RadTreeNodeEventArgs)
rgBatchDetails.Rebind()
End Sub
Public Function GetBatchViewData(ByVal nodeSelected As RadTreeNode) As DataSet
Dim ds As New DataSet
If nodeSelected.Value.Substring(0, 4) = "BATC" Then
ds = objRTLWebService.Retrieve_DocumentsByBatch(nodeSelected.Text, strError)
ElseIf nodeSelected.Value.Substring(0, 4) = "GROU" Then
ds = objRTLWebService.Retrieve_DocumentsByGroup(nodeSelected.ParentNode.Text, nodeSelected.Text, strError)
ElseIf nodeSelected.Text = "OPEN/PENDING" Then
End If
Return ds
End Function
Private Function CreateNode(ByVal strName As String, ByVal isExpanded As Boolean) As RadTreeNode
Dim node As New RadTreeNode(strName)
node.Expanded = isExpanded
Return node
End Function
Private Shared Sub LoadRootNodes(ByVal treeBatches As RadTreeView, ByVal expandMode As TreeNodeExpandMode, _
ByVal strStageName As String, ByVal drStage() As DataRow, _
ByVal dsScanMainBatches As DataSet, ByVal dsBatchMainBatches As DataSet)
If drStage.Length = 0 Then
Dim a = 0
Exit Sub
Else
treeBatches.Nodes.Clear()
Dim intCounter1 As Integer = 0
Dim intCounter2 As Integer = 0
Dim strOpenStatus As String = drStage(0).Item("OpenStatus").ToString
Dim strInProgressStatus As String = drStage(0).Item("InProgressStatus").ToString
Dim strCompleteStatus As String = drStage(0).Item("CompleteStatus").ToString
If strStageName = "SCANNING" Then
Dim drOpen() As DataRow = dsScanMainBatches.Tables(0).Select("BatchStatus = '" & strOpenStatus & "'")
Dim drInProgress() As DataRow = dsScanMainBatches.Tables(0).Select("BatchStatus = '" & strInProgressStatus & "'")
Dim drComplete() As DataRow = dsScanMainBatches.Tables(0).Select("BatchStatus = '" & strCompleteStatus & "'")
intCounter1 = drOpen.Length + drInProgress.Length
intCounter2 = drComplete.Length
Else
Dim drOpen() As DataRow = dsBatchMainBatches.Tables(0).Select("BatchStatus = '" & strOpenStatus & "'")
Dim drInProgress() As DataRow = dsBatchMainBatches.Tables(0).Select("BatchStatus = '" & strInProgressStatus & "'")
Dim drComplete() As DataRow = dsBatchMainBatches.Tables(0).Select("BatchStatus = '" & strCompleteStatus & "'")
intCounter1 = drOpen.Length + drInProgress.Length
intCounter2 = drComplete.Length
End If
Dim node As New RadTreeNode()
node.Text =
"Open/Pending" & "(" & intCounter1.ToString() & ")"
node.Value =
"0" & strStageName
node.ToolTip =
"ROOT"
If intCounter1 > 0 Then
node.ExpandMode = expandMode
End If
treeBatches.Nodes.Add(node)
Dim node1 As New RadTreeNode()
node1.Text =
"Complete" & "(" & intCounter2.ToString() & ")"
node1.Value =
"1" & strStageName
node1.ToolTip =
"ROOT"
If intCounter2 > 0 Then
node1.ExpandMode = expandMode
End If
treeBatches.Nodes.Add(node1)
End If
End Sub
Protected Sub rtvBatches_NodeExpand(ByVal sender As Object, ByVal e As RadTreeNodeEventArgs)
Dim dsScanMainBatches As DataSet = ScanMainData
Dim dsBatchMainBatches As DataSet = batchmainData
Dim dsStages As DataSet = AllStagesData
Dim drStage() As DataRow
For Each dt As DataTable In dsStages.Tables
drStage = dt.Select(
"StageID = " & StageID)
If drStage.Length > 0 Then
Exit For
End If
Next
PopulateNodeOnDemand(e, TreeNodeExpandMode.ServerSideCallBack, dsScanMainBatches, dsBatchMainBatches, drStage)
End Sub
Private Shared Sub PopulateNodeOnDemand(ByVal e As RadTreeNodeEventArgs, ByVal expandMode As TreeNodeExpandMode, _
ByVal dsScanMainBatches As DataSet, ByVal dsBatchMainBatches As DataSet, _
ByVal drStage() As DataRow)
Dim strNodeText As String = e.Node.Text
Dim strNodeValue As String = e.Node.Value
Dim strStageName As String = strNodeValue.Substring(1, strNodeValue.Length - 1)
If drStage.Length = 0 Then
Dim a = 0
Exit Sub
Else
Dim dtData As New DataTable
If strNodeText.ToUpper.IndexOf("OPEN/PENDING") >= 0 Then
If strStageName = "SCANNING" Or strStageName = "" Then
dtData = dsScanMainBatches.Tables(0)
Else
dtData = dsBatchMainBatches.Tables(0)
End If
Dim drData() As DataRow = dtData.Select("BatchStatus = '" & drStage(0).Item("OpenStatus") & "'")
For Each row As DataRow In drData
Dim node As New RadTreeNode()
node.Text = row(
"BatchNumber").ToString()
node.Value =
"BATCH" & row("BatchNumber").ToString()
node.ExpandMode = expandMode
e.Node.Nodes.Add(node)
Next
e.Node.Expanded =
True
ElseIf strNodeText.ToUpper.IndexOf("COMPLETE") >= 0 Then
If strStageName = "SCANNING" Then
dtData = dsScanMainBatches.Tables(0)
Else
dtData = dsBatchMainBatches.Tables(0)
End If
Dim drData() As DataRow = dtData.Select("BatchStatus = '" & drStage(0).Item("CompleteStatus") & "'")
For Each row As DataRow In drData
Dim node As New RadTreeNode()
node.Text = row(
"BatchNumber").ToString()
node.Value =
"BATCH" & row("BatchNumber").ToString()
node.ExpandMode = expandMode
e.Node.Nodes.Add(node)
Next
e.Node.Expanded =
True
ElseIf strNodeValue.Substring(0, 4) = "BATC" Then
dtData = GetGroupNodes(strNodeText)
For Each row As DataRow In dtData.Rows
Dim node As New RadTreeNode()
node.Text = row(
"DocTypeIndex").ToString("000")
node.Value =
"GROUP" & row("DocTypeIndex").ToString()
If dtData.Rows.Count > 0 Then
node.ExpandMode = expandMode
End If
e.Node.Nodes.Add(node)
Next
e.Node.Expanded =
True
ElseIf strNodeValue.Substring(0, 4) = "GROU" Then
dtData = GetDocumentNodes(e.Node.ParentNode.Text, strNodeText)
For Each row As DataRow In dtData.Rows
Dim node As New RadTreeNode()
node.Text = row(
"DocType").ToString & " " & row("ImageFile").ToString & " " & row("AccountNo").ToString & " " & row("Amount").ToString
node.Value =
"DOC" & row("ImageFile").ToString()
If dtData.Rows.Count > 0 Then
node.ExpandMode = expandMode
End If
e.Node.Nodes.Add(node)
Next
e.Node.Expanded =
True
End If
End If
End Sub
Private Shared Function GetGroupNodes(ByVal strBatchNumber As String) As DataTable
Dim dsGroups As DataSet = objRTLWebService.Retrieve_GroupsByBatch(strBatchNumber, strError)
Return dsGroups.Tables(0)
End Function
Private Shared Function GetDocumentNodes(ByVal strBatchNumber As String, ByVal strGroupNumber As String) As DataTable
Dim dsDocuments As DataSet = objRTLWebService.Retrieve_DocumentsByGroup(strBatchNumber, strGroupNumber, strError)
Return dsDocuments.Tables(0)
End Function
1- DropDownList is AssetType
2- DropDownList is Category
What I am trying to do is this:
When user select value from first dropdown list (AssetType), I need to get the asset type value so I can update the values in second dropdown list (category).
So bit of research I found some help, which is to attach an event to a GridDropDownColumn. I have found this code on many forums to attach an event
SomeList.ComboBoxControl.SelectedIndexChanged = New RadComboBoxSelectedIndexChangedEventHandler(AddressOf ComboBoxControl_SelectedIndexChanged)
Protected Sub ComboBoxControl_SelectedIndexChanged(ByVal sender as Object, ByVal e as RadComboBoxSelectedIndexChangedEventArgs)
' code goes here
End Sub
But when I try to attach an event in my code my list doesn't give me 'SelectedIndexChanged' option instead it gives me 'SelectedIndex' option.
To cut long story short can you please tell me with example how to attach an event to a GridDropDownColumn and also check below code and tell me what I am doing wrong.
Private Sub AssetGrid_ItemCreated(ByVal sender as Object, ByVal e as Telerik.Web.UI.GridItemEventArgs) Handles AssGrid.ItemCreated
If TypeOf e.Item Is GridEditableItem AndAlso (e.Item.IsInEditMode) Then
Dim editableItem as GridEditableItem = DirectCast(e.Item, GridEditableItem)
‘ Get the asset list
Dim assetList As GridDropDownListColumnEditor = TryCast(editableItem.EditManager.GetColumnEditor(“AssetTypeID”) , GridDropDownListColumnEditor)
AssetList.ComboBoxControl.AutoPostBack = True
AssetList.ComboBoxControl.SelectedIndex = New RadComboBoxSelectedIndexChangedEventHandler(AddressOf ComboBoxControl_SelectedIndexChanged)
End If
Protected Sub ComboBoxControl_SelectedIndexChanged(ByVal sender as Object, ByVal e as RadComboBoxSelectedIndexChangedEventArgs)
' code goes here
End Sub
Its urgent!
Many Thanks
Hi,
We are finding difficult to apply background color/image to the Rad Grid header as it is pointed in the screen shot attached. I will appreciate if any one can give the solution.
Thanks
Venkat
| <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> |
| <%@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %> |
| <!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"> |
| <asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager> |
| <div> |
| <telerik:RadAjaxPanel runat="server" ID="RadAjaxPanel1" LoadingPanelID="RadAjaxLoadingPanel1" EnableAJAX="true"> |
| <telerik:RadGrid ID="RadGrid1" EnableLinqExpressions="true" Skin="Vista" DataSourceID="LinqDataSource1" PageSize="100" |
| AllowFilteringByColumn="True" AllowPaging="True" AllowSorting="True" EnableViewState="false" |
| runat="server"> |
| <HeaderContextMenu Skin="Vista" EnableTheming="True"> |
| <CollapseAnimation Type="OutQuint" Duration="200"></CollapseAnimation> |
| </HeaderContextMenu> |
| <PagerStyle Mode="NextPrevAndNumeric" Position="TopAndBottom" /> |
| <MasterTableView DataSourceID="LinqDataSource1" AutoGenerateColumns="False"> |
| <RowIndicatorColumn> |
| <HeaderStyle Width="20px"></HeaderStyle> |
| </RowIndicatorColumn> |
| <ExpandCollapseColumn> |
| <HeaderStyle Width="20px"></HeaderStyle> |
| </ExpandCollapseColumn> |
| <Columns> |
| <telerik:GridBoundColumn DataField="Column1" HeaderText="Column1" |
| SortExpression="Column1" UniqueName="Column1"> |
| </telerik:GridBoundColumn> |
| <telerik:GridBoundColumn DataField="Column2" HeaderText="Column2" |
| SortExpression="Column2" UniqueName="Column2"> |
| </telerik:GridBoundColumn> |
| <telerik:GridBoundColumn DataField="Column3" HeaderText="Column3" |
| SortExpression="Column3" UniqueName="Column3"> |
| </telerik:GridBoundColumn> |
| <telerik:GridBoundColumn DataField="Column4" HeaderText="Column4" |
| SortExpression="Column4" UniqueName="Column4"> |
| </telerik:GridBoundColumn> |
| <telerik:GridBoundColumn DataField="Column5" HeaderText="Column5" |
| SortExpression="Column5" UniqueName="Column5"> |
| </telerik:GridBoundColumn> |
| <telerik:GridBoundColumn DataField="Column7" DataType="System.Char" |
| HeaderText="Column7" SortExpression="Column7" UniqueName="Column7"> |
| </telerik:GridBoundColumn> |
| <telerik:GridBoundColumn DataField="Column9" HeaderText="Column9" |
| SortExpression="Column9" UniqueName="Column9"> |
| </telerik:GridBoundColumn> |
| </Columns> |
| </MasterTableView> |
| <FilterMenu Skin="Hay" EnableTheming="True"> |
| <CollapseAnimation Type="OutQuint" Duration="200"></CollapseAnimation> |
| </FilterMenu> |
| </telerik:RadGrid> |
| <asp:LinqDataSource ID="LinqDataSource1" runat="server" |
| ContextTypeName="Kelly.RAPData" TableName="RAPs" AutoPage="true"> |
| </asp:LinqDataSource> |
| <telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server" Height="75px" Width="75px" Transparency="5"> |
| <img style="margin-top:50px;" alt="Loading..." src='<%= RadAjaxLoadingPanel.GetWebResourceUrl(Page, "Telerik.Web.UI.Skins.Default.Ajax.loading4.gif") %>' /> |
| </telerik:RadAjaxLoadingPanel> |
| </telerik:RadAjaxPanel> |
| </div> |
| </form> |
| </body> |
| </html> |
<RSCtl:RSGrid ID="RSGrid1" IsConfigDrivenGrid="true" runat="server" style="margin:5" > <MasterTableView CommandItemDisplay="Top"> <CommandItemTemplate> <table id="tblGridCommandItem" runat="server" cellpadding="0" cellspacing="0" width="100%"> <tr width="100%"> <td align="right"> <asp:Label ID="lblSearchResultTime" runat="server" CssClass="RSGrid_HeaderCommandItem_Message" /> </td> </tr> </table> </CommandItemTemplate></MasterTableView></RSCtl:RSGrid>
Above is my code for grid. I want to access label which is in the CommandItemTemplate in javascript. I am in OnResponseEnd event of RadAjaxManager.
Thanks.
Jimmy.