Telerik Forums
UI for ASP.NET AJAX Forum
9 answers
349 views
Hi, 
I have a requirement where i have to provide Grid as tree nodes with drag drop support.
I have Put grid under "NodeTemplate", the tree view shows the grid properly.
Problem comes when i rearrange them in the tree nodes.
eg; Node 1 has 2 sub nodes and Node 2 has 2 sub nodes. moving nodes from Parent node 1 to Parent Node 2 works fine, but when i agin move other/same nodes to other node (grid does not display values)

I am using the below code pls help me if i am missing something.

<telerik:RadTreeView ID="RadTreeView1" runat="server" EnableDragAndDrop="true" MultipleSelect="true"
            OnNodeDrop="RadTreeView1_HandleDrop" EnableDragAndDropBetweenNodes="true"  CheckBoxes="true" TriStateCheckBoxes="true" >
<Nodes>
<telerik:RadTreeNode Text="Parent1" Expanded="True">
<Nodes>
<telerik:RadTreeNode Text="Parent1 Child1">
<NodeTemplate>
<telerik:RadGrid ID="RadGrid1" runat="server" DataSourceID="SqlDataSource1">
</telerik:RadGrid>
</NodeTemplate>
</telerik:RadTreeNode>
<telerik:RadTreeNode Text="Parent1 Child2">
<NodeTemplate>
<telerik:RadGrid ID="RadGrid1" runat="server" DataSourceID="SqlDataSource2">
</telerik:RadGrid>
</NodeTemplate>
</telerik:RadTreeNode>
                    </Nodes>
                </telerik:RadTreeNode>
                <telerik:RadTreeNode Text="Parent2" Expanded="True">
                    <Nodes>
                        <telerik:RadTreeNode Text="Parent2 Child1">
                            <NodeTemplate>
                                <telerik:RadGrid ID="RadGrid1" runat="server" DataSourceID="SqlDataSource2">
                                </telerik:RadGrid>
                            </NodeTemplate>
                        </telerik:RadTreeNode>
                        <telerik:RadTreeNode Text="Parent2 Child2">
                            <NodeTemplate>
                                <telerik:RadGrid ID="RadGrid1" runat="server" DataSourceID="SqlDataSource1">
                                </telerik:RadGrid>
                            </NodeTemplate>
                        </telerik:RadTreeNode>
                    </Nodes>
                </telerik:RadTreeNode>
                <telerik:RadTreeNode Text="Parent3">
                    <Nodes>
                        <telerik:RadTreeNode Text="Parent3 Child1">
                            <NodeTemplate>
                                <telerik:RadGrid ID="RadGrid1" runat="server" DataSourceID="SqlDataSource2">
                                </telerik:RadGrid>
                            </NodeTemplate>
                        </telerik:RadTreeNode>
                        <telerik:RadTreeNode Text="Parent3 Child2">
                            <NodeTemplate>
                                <telerik:RadGrid ID="RadGrid1" runat="server" DataSourceID="SqlDataSource1">
                                </telerik:RadGrid>
                            </NodeTemplate>
                        </telerik:RadTreeNode>
                    </Nodes>
                </telerik:RadTreeNode>
                <telerik:RadTreeNode Text="Parent3">
                    <Nodes>
                        <telerik:RadTreeNode Text="Parent3 Child1">
                            <NodeTemplate>
                                <telerik:RadGrid ID="RadGrid1" runat="server" DataSourceID="SqlDataSource2">
                                </telerik:RadGrid>
                            </NodeTemplate>
                        </telerik:RadTreeNode>
                        <telerik:RadTreeNode Text="Parent3 Child2">
                            <NodeTemplate>
                                <telerik:RadGrid ID="RadGrid1" runat="server" DataSourceID="SqlDataSource1">
                                </telerik:RadGrid>
                            </NodeTemplate>
                        </telerik:RadTreeNode>
                    </Nodes>
                </telerik:RadTreeNode>
                <telerik:RadTreeNode Text="Parent4">
                    <Nodes>
                        <telerik:RadTreeNode Text="Parent4 Child1">
                            <NodeTemplate>
                                <telerik:RadGrid ID="RadGrid1" runat="server" DataSourceID="SqlDataSource1">
                                </telerik:RadGrid>
                            </NodeTemplate>
                        </telerik:RadTreeNode>
                        <telerik:RadTreeNode Text="Parent4 Child2">
                            <NodeTemplate>
                                <telerik:RadGrid ID="RadGrid1" runat="server" DataSourceID="SqlDataSource2">
                                </telerik:RadGrid>
                            </NodeTemplate>
                        </telerik:RadTreeNode>
                    </Nodes>
                </telerik:RadTreeNode>
            </Nodes>
        </telerik:RadTreeView>
        <telerik:RadScriptManager ID="RadScriptManager1" runat="server">
        </telerik:RadScriptManager>
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:AdventureWorks %>"
            SelectCommand="SELECT TOP (5) AddressID, AddressLine1, AddressLine2, City, StateProvinceID, PostalCode, rowguid, ModifiedDate FROM Person.Address">
        </asp:SqlDataSource>
        <asp:SqlDataSource ID="SqlDataSource2" runat="server" ConnectionString="<%$ ConnectionStrings:AdventureWorks %>"
            SelectCommand="SELECT TOP (5) AddressID, AddressLine1, AddressLine2, City, StateProvinceID, PostalCode, rowguid, ModifiedDate FROM Person.Address Order By AddressID Desc">
        </asp:SqlDataSource>

protected void RadTreeView1_HandleDrop(object sender, Telerik.Web.UI.RadTreeNodeDragDropEventArgs e)
        {
            foreach (var node in e.DraggedNodes)
            {
                if (node.ParentNode != e.DestDragNode)
                e.DestDragNode.Nodes.Add(node);
            }
        }
Nikolay Tsenkov
Telerik team
 answered on 09 Nov 2010
7 answers
305 views

 

Hello,

I am using radtreeview on page with RadAjaxManager for ajaxifying controls
Radtreeview is used to update other controls, as well as to be updated from another control, via radajaxmanager

Also have onClientLoad event on radtreeview and associated script:
 

<script type="text/javascript" language="javascript">
  
  
  
function ScrollToSelectedNode() {
  
var tree = $find('<%=tv_Projects.ClientID %>');
  
var selectedNode = tree.get_selectedNode();
  
if (selectedNode) {
  
selectedNode.scrollIntoView();
  
}
  
}
  
</script>
<telerik:RadSplitter runat="server" ID="rdSplitter" LiveResize="False" Width="100%"
    Height="550px" VisibleDuringInit="False">
    <telerik:RadPane ID="radPaneTreeviews" runat="server" MinWidth="50" Width="250px">
        <telerik:RadTreeView ID="tv_Projects" Runat="server" CheckBoxes="False" s Height="100%"
            DataFieldParentID="ParentID" DataFieldID="ProjectID" DataTextField="NodeText"
            DataValueField="NodeText" OnClientLoad="ScrollToSelectedNode" OnClientNodeExpanded="ScrollToSelectedNode">
        </telerik:RadTreeView>
    </telerik:RadPane>
    <telerik:RadSplitBar ID="rdSplitBar" runat="server" CollapseMode="Forward">
    </telerik:RadSplitBar>
    <telerik:RadPane ID="radPaneGrid" runat="server" Width="100%" MinHeight="550" 
        MinWidth="50" Scrolling="Y">
        <asp:Panel ID="MainContentPanel" runat="server" Style="text-align:right">
        </asp:Panel>
    </telerik:RadPane>
</telerik:RadSplitter>


However, selectedNode.scrollIntoView(); , although executed (verified!), doesn't produce any effect.

If ajaxifying and RadaAjaxManger is not used, but only regular postbacks, everything works fine.

What has to be changed, in order to get radtreeview scrolled to selected node, with ajax switched on?

Thanks,
Marijana

 

 

 

Nikolay Tsenkov
Telerik team
 answered on 09 Nov 2010
1 answer
96 views
Hi,

I'm trying the use the http://demos.telerik.com/aspnet-ajax/grid/examples/hierarchy/nestedviewtemplate/defaultcs.aspx as a start up for my scenario.   I would like to have the Grid in the Sales tab (only down to customer level,  no order details) the ability to add and delete.  I'm having a problem trying to read the value of the Label1 when click on update.   So saying, if I want to add customer an employee, how can that be done.

thanks

Vinh Vu
Tsvetina
Telerik team
 answered on 09 Nov 2010
1 answer
64 views
Hello,

I'm using a RadGrid with a Pager whose custom values are added in the ItemDataBound item by:

protected void RG_Results_ItemDataBound(object sender, GridItemEventArgs e)
{
    if (e.Item is GridPagerItem)
    {
        RadComboBox pagerCombo = e.Item.FindControl("PageSizeComboBox") as RadComboBox;
        pagerCombo.Items.Clear();
        RadComboBoxItem item = new RadComboBoxItem("10", "10");
        item.Attributes.Add("ownerTableViewId", RG_Results.MasterTableView.ClientID);
        pagerCombo.Items.Add(item);
        item = new RadComboBoxItem("20", "20");
        item.Attributes.Add("ownerTableViewId", RG_Results.MasterTableView.ClientID);
        pagerCombo.Items.Add(item);
        item = new RadComboBoxItem("50", "50");
        item.Attributes.Add("ownerTableViewId", RG_Results.MasterTableView.ClientID);
        pagerCombo.Items.Add(item);
        item = new RadComboBoxItem("100", "100");
        item.Attributes.Add("ownerTableViewId", RG_Results.MasterTableView.ClientID);
        pagerCombo.Items.Add(item);
        item = new RadComboBoxItem("200", "200");
        item.Attributes.Add("ownerTableViewId", RG_Results.MasterTableView.ClientID);
        pagerCombo.Items.Add(item);
        pagerCombo.FindItemByText(e.Item.OwnerTableView.PageSize.ToString()).Selected = true;
    }
}

The top pager works fine.

But the bottom pager has a weird behavior:

On first click on the down arrow, it only shows the first value ("10" in my code sample).

I have to click twice to get all the values

(Show attachment for screenshot)

Does anyone have an idea on how to fix this ?

Thanks a lot for your response

Vincent
Pavlina
Telerik team
 answered on 09 Nov 2010
5 answers
734 views

Hello,

I have got radgrid which consists of 2 columns, 1 Test checkbox and other is amount. What I would like to do is this when user tick testcheck box I want amount column to be editable.

can you please tell me how to get round of this problem.


<

 

 

telerik:RadGrid ID="TestGrid" runat="server" AutoGenerateColumns="False" GridLines="None" ShowHeader="False">

 

 

 

<MasterTableView DataKeyNames="ID">

 

 

 

<MasterTableView EditMode="InPlace">

 

 

 

<Columns>

 

 

 

<telerik:GridTemplateColumn>

 

 

 

<ItemStyle Width="20px" />

 

 

 

<ItemTemplate>

 

 

 

<asp:CheckBox ID="TestCheckBox" runat="server" AutoPostBack="true" />

 

 

 

</ItemTemplate>

 

 

 

</telerik:GridTemplateColumn>

 

 

 

<telerik:GridBoundColumn HeaderText="Amount" DataField="Amount" UniqueName="Amount" />

 

 

 

</Columns>

 

 

 

</MasterTableView>

 

 

 

</telerik:RadGrid>

Many thanks

 

Princy
Top achievements
Rank 2
 answered on 09 Nov 2010
3 answers
254 views
Added a GridImageColumn to my grid so I could show a thumbnail image. I was asked to make it toggle on and off via combobox, so I use Page Init and toggle the Visibility property on the GridImageColumn based on the selection from the combo.

Test 1: If the page initially loads in Thumbnail View mode and I select items and hit Add to Cart, all is good. 
Test 2: If the page initially loads in List View Mode and I select items and hit Add to Cart, all is good
Test 3: If I toggle from Thumbnail to List View Mode and then select items and hit Add to Cart, my RadGrid.SelectedItems collection is empty? The same goes for initial load in List and toggle to Thumbnail.

How would the visibility of the column have anything to do with it being selected or not when I am doing everything the same

Thanks,
Jason
Iana Tsolova
Telerik team
 answered on 09 Nov 2010
3 answers
310 views

Hi,
I am using Telerik GridButton column with Confirm Text and Confirm Dialog type as radwindow.
I would like to close the parent window(window having the  grid) once user confirms the changes.
Is there a way to call close function to close parent window of the cofirm radwindow ?

Here is the code

<telerik:RadGrid ID="rgPositionFactorComp" runat="server" 
    AllowPaging="True" PageSize="5" GridLines="Both" AutoGenerateColumns="False"
<Columns>       
     <telerik:GridBoundColumn DataField="WorkflowFactorLevel" UniqueName="WorkflowFactorLevel" HeaderText="Existing Level">      </telerik:GridBoundColumn>
     <telerik:GridBoundColumn DataField="WorkflowLanguage"
UniqueName="WorkflowLanguage" HeaderText="Existing Language">
</telerik:GridBoundColumn>
</telerik:GridTemplateColumn>
  <telerik:GridButtonColumn CommandName="Reject" Text ="Reject"  
    ButtonType ="PushButton"
    UniqueName="btnReject"
    ConfirmText="Are you sure you want to Reject changes?"
   ConfirmTitle="Reject Changes?" ConfirmDialogType="RadWindow"> </telerik:GridButtonColumn>
</Columns>
</telerik:RadGrid>
<telerik:RadWindowManager ID="RadWindowManager1" runat="server" Skin="WebBlue">
</telerik:RadWindowManager>

Thanks,
Manisha
Pavlina
Telerik team
 answered on 09 Nov 2010
1 answer
466 views
I would like to center the window. Can I do that may be in the code?
Maybe there is a center method ... RadWindowPopup.CenterMethode()?

<telerik:RadWindowManager ID="RadWindowManagerPopup" runat="server">
  <Windows>
    <telerik:RadWindow ID="RadWindowPopup" VisibleOnPageLoad="true" EnableShadow="true" Behaviors="Close, Move" AutoSize="true" runat="server" >
      <ContentTemplate>
        <div class="popup">
          <div class="popup_l">
           <div ID="PopupIcon" runat="server"></div>
          </div>
          <div class="popup_r">
            <asp:Literal ID="UserMessage" runat="server"></asp:Literal>
          </div>
          <div class="clear popup_button">
            <asp:Button ID="Button" runat="server" Text="OK" />
          </div>
        </div>
      </ContentTemplate>
    </telerik:RadWindow>
  </Windows>
</telerik:RadWindowManager>

Can you please give me a hint how I can do that.
And often in using CSS with me that would like a method best.


Regards Dani
Shinu
Top achievements
Rank 2
 answered on 09 Nov 2010
1 answer
248 views
Here is what I am trying to do.  I want a searchable combobox.  Enter key does nothing unless the text typed into the search match's something in the list, or something is already selected (highlighted) via the down/up arrows.

I feel I'm almost there.  I had to check eventArgs._domEvent to get the keyCode.  eventArgs.keyCode is undefined.
The line: item.select() does not seem to work. var item = sender.findItemByText(sender.get_text()); however is finding the correct item.


Any help here would be great.  I don't think what I am trying to do is a crazy scenario.  I think this is a common auto complete.

<script type="text/javascript">
    var ent = false; 
       
    function DetectEnter(sender, eventArgs) 
    { 
        var keyCode = eventArgs._domEvent.keyCode; 
           
        if (keyCode == 13) 
        {
            ent = true;
            var item = sender.findItemByText(sender.get_text());
            if (item) {
                item.select();
                ent = false;
            }
        } 
        else 
        { 
           ent = false; 
        } 
    } 
 
    function CheckEnter(sender, eventArgs) 
    {
        var combo = $find("<%= _SymbolLookup.ClientID %>"); 
         
        combo.hideDropDown(); 
        var temp = ent;
        ent = false;
        eventArgs.set_cancel(temp); 
    } 
</script>

<telerik:RadComboBox ID="_SymbolLookup" runat="server" AllowCustomText="true" Filter="StartsWith"
    DataTextField="ContactName" EnableLoadOnDemand="True" ShowMoreResultsBox="True"
    EmptyMessage="Type to search for symbol..." OnSelectedIndexChanged="_SymbolLookup_SelectedIndexChanged"
    OnItemsRequested="SymbolLookup_OnItemsRequested" DropDownWidth="525px" Width="200px"
    HighlightTemplatedItems="true" AutoPostBack="true" OnClientKeyPressing="DetectEnter"
    OnClientSelectedIndexChanging="CheckEnter">
    <HeaderTemplate>
        <table width="500px" cellspacing="0" cellpadding="0">
            <tr>
                <td style="width: 50px;">
                    Symbol
                </td>
                <td style="width: 375px;">
                    Name
                </td>
                <td style="width: 75px;">
                    Status
                </td>
            </tr>
        </table>
    </HeaderTemplate>
    <ItemTemplate>
        <table width="500px" cellspacing="0" cellpadding="0">
            <tr>
                <td style="width: 50px;">
                    <%# DataBinder.Eval(Container, "Attributes['Symbol']")%>
                </td>
                <td style="width: 375px; overflow: hidden;">
                    <%# DataBinder.Eval(Container, "Attributes['Instrument_Name']")%>
                </td>
                <td style="width: 75px;">
                    <%# DataBinder.Eval(Container, "Attributes['Status']") %>
                </td>
            </tr>
        </table>
    </ItemTemplate>
</telerik:RadComboBox>
Simon
Telerik team
 answered on 09 Nov 2010
2 answers
85 views
For several hours this after I was getting an error in IE8. It was the infamous red screen of death proclaiming "this website has been reported as unsafe".

The cause of this error was the telerik:RadTreeView tag. As soon as I removed the tag, the error went away. Did anyone else notice this behaviour? Code below.

  <script type="text/javascript">
            //<!--
                function onClientContextMenuItemClicked(sender, args)
                {
                    var menuItem = args.get_menuItem();
                    var treeNode = args.get_node();

                    switch(menuItem.get_value())
                    {
                        case "Edit":
                            var wnd = location.href='/admin/content_category_details_self.aspx?CategoryID=' + treeNode.get_value();
                            wnd.setSize(800,500);
                            break;
                        case "Add":
                            var wnd = location.href='/admin/content_category_details_self.aspx?CategoryID=0&ParentID=' + treeNode.get_value();
                            wnd.setSize(800,500);
                            break;
                        case "Sort":
                            OpenOverlay('/admin/content_category_sort.aspx?CategoryID=' + treeNode.get_value(),600,400);
                           break;
                    }
                }
            //-->
            </script>


<telerik:RadTreeView Skin="Outlook" ID="RadTree1" OnClientContextMenuItemClicked="onClientContextMenuItemClicked" Runat="server">
          <ContextMenus>
            <telerik:RadTreeViewContextMenu Skin="Outlook" ID="MainContextMenu" runat="server">
              <Items>
                <telerik:RadMenuItem Value="Edit" Text="Edit"></telerik:RadMenuItem>
                <telerik:RadMenuItem Value="Add" Text="Add Subcategory"></telerik:RadMenuItem>
                <telerik:RadMenuItem Value="Sort" Text="Sort"></telerik:RadMenuItem>
              </Items>
            </telerik:RadTreeViewContextMenu>
          </ContextMenus>
        </telerik:RadTreeView> 
Julian Roberts
Top achievements
Rank 1
 answered on 09 Nov 2010
Narrow your results
Selected tags
Tags
+? more
Top users last month
Jake
Top achievements
Rank 1
RBarnes
Top achievements
Rank 1
Iron
Iron
Rami
Top achievements
Rank 1
Iron
Veteran
Nathan
Top achievements
Rank 1
Kumeri
Top achievements
Rank 1
Iron
Veteran
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Jake
Top achievements
Rank 1
RBarnes
Top achievements
Rank 1
Iron
Iron
Rami
Top achievements
Rank 1
Iron
Veteran
Nathan
Top achievements
Rank 1
Kumeri
Top achievements
Rank 1
Iron
Veteran
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?