Telerik Forums
UI for ASP.NET AJAX Forum
3 answers
128 views

Hi All,

Is there a way to tell RadFilterNumericFieldEditor not to use thousands separator in its numeric editor? For example, I have columns that display Year or IDs. In the filter editor I want to see ‘2012’ and not ‘2,012’. For the column filters I did it with setting NumberFormat.GroupSeparator = "" on filteringItem, but cannot find a way to do it for RadFilter.

 
Thanks.
Elena.

Antonio Stoilkov
Telerik team
 answered on 06 Feb 2013
1 answer
140 views
Hi !

I have a RadTreeview to which I have set properties CheckBoxes="true"  and OnClientNodeChecking="ClientNodeChecking".

Now, at server-side RadTreeViewMain_NodeDataBound() event I am setting e.Node.Checkable = false; for all nodes.

Then I am checking e.Node.Category from database for each node and if node is of "Option" category, then I am setting e.Node.Checkable = true;

at client-side I have defined a javascript function which is used to uncheck all of the child nodes of the node on unchecking itself.

Surprisingly, it works fine fist time when I check the node and uncheck the same. But after that if I click the same node to make it checked, it shows it is already checked, while in UI it is not checked.

Javascript functions are as below :

function ClientNodeChecking(sender, eventArgs) {
    var node = eventArgs.get_node();
    var parent = node.get_parent();
    var t = node.get_treeView();
    var preventCheck = false;
    var isMultiSelect = parent.get_attributes().getAttribute("multiSelect");
    var allNodes = parent.get_allNodes();
    var value = node.get_value();
    var checkstate = node.get_checkState();
    var level = node.get_level();
    var errormessage = "";
 
    if (checkstate == 1) {
        t.trackChanges();
        node.uncheck();
        getAllChildUnchecked(node);
        t.commitChanges();
        return;
    }
 
    if (level > 2) {
        var grandParent = parent.get_parent();
        var grandParentCategory = grandParent.get_category();
 
        if (grandParentCategory == "Option" && !grandParent.get_checked()) {
 
            // you can add simple alert message here..
            //errormessage = "The parent node is not checked.";
            //openDialogPreventChecked(errormessage);
            eventArgs.set_cancel(true);
            return;
        }
    }
    if (allNodes.length > 0) {
        for (var i = 0; i < allNodes.length; i++) {
            var childnode = allNodes[i];
            var childvalue = childnode.get_value();
            if (childnode.get_checked() && isMultiSelect == "false" && value != childvalue) {
                preventCheck = true;
                break;
            }
        }
    }
    if (preventCheck) {
        // you can add simple alert message here..
        eventArgs.set_cancel(true);
        //errormessage = "This is not multi-select type of question";
        //openDialogPreventChecked(errormessage);
    }
}
 
function getAllChildUnchecked(node) {
    var childNodes = node.get_allNodes();
    if (childNodes.length > 0) {
        for (var i = 0; i < childNodes.length; i++) {
            var childnode = childNodes[i];
            childnode.uncheck();
            getAllChildUnchecked(childnode);
        }
    }
}


Kindly provide me some efficient solution. Awaiting for your valuable response.

Thanks,
Dev
Dev
Top achievements
Rank 1
 answered on 06 Feb 2013
1 answer
193 views
var isDoubleClick = false;
  
          var clickHandler = null;
  
          var ClikedDataKey = null;
  
          function RowClick(sender, args) {
              ClikedDataKey = args._dataKeyValues.ID;
  
              isDoubleClick = false;
  
              if (clickHandler) {
  
                  window.clearTimeout(clickHandler);
  
                  clickHandler = null;
  
              }
  
              clickHandler = window.setTimeout(ActualClick, 200);
  
          }
  
          function RowDblClick(sender, args) {
  
              isDoubleClick = true;
  
              if (clickHandler) {
  
                  window.clearTimeout(clickHandler);
  
                  clickHandler = null;
  
              }
  
              clickHandler = window.setTimeout(ActualClick, 200);
  
          }
  
          function ActualClick() {
  
              if (isDoubleClick) {
  
                  var grid = $find("<%=RadGrid1.ClientID %>");
                  if (grid) {
                      var MasterTable = grid.get_masterTableView();
                      var Rows = MasterTable.get_dataItems();
                      for (var i = 0; i < Rows.length; i++) {
                          var row = Rows[i];
                          if (ClikedDataKey != null && ClikedDataKey == row.getDataKeyValue("ID")) {
                              MasterTable.fireCommand("MyClick2", ClikedDataKey);
                          }
                      }
                  }
  
              }
  
              else {
  
                  var grid = $find("<%=RadGrid1.ClientID %>");
                  if (grid) {
                      var MasterTable = grid.get_masterTableView();
                      var Rows = MasterTable.get_dataItems();
                      for (var i = 0; i < Rows.length; i++) {
                          var row = Rows[i];
                          if (ClikedDataKey != null && ClikedDataKey == row.getDataKeyValue("ID")) {
                              MasterTable.fireCommand("MyClick1", ClikedDataKey);
                          }
                      }
                  }
  
              }
  
  
  
          }




protected void RadGrid1_ItemCommand(object sender, GridCommandEventArgs e)
    {
        if (e.CommandName == "MyClick1")
        {
            // songle click
            //e.CommandArgument -- Get access datakey here
        }
        else if (e.CommandName == "MyClick2")
        {
            // Double click
            //e.CommandArgument -- Get access datakey here
        }
    }


<telerik:RadGrid ID="RadGrid1" runat="server" AutoGenerateColumns="False" OnNeedDataSource="RadGrid1_NeedDataSource">
           <MasterTableView DataKeyNames="ID"
               ClientDataKeyNames="ID">
               <Columns>
                   ...................
                   ................
               </Columns>
           </MasterTableView>
           <ClientSettings>
               <ClientEvents OnRowDblClick="RowDblClick" OnRowClick="RowClick" />
           </ClientSettings>
       </telerik:RadGrid>







Here's the Problem:
Since I'm Firing the Command from CLIENT, in the server RadGrid1_ItemCommand
when I try to Access a Data Row Column 
via Hidden Field or just using

string STATUS= ((GridDataItem)e.Item).GetDataKeyValue("STATUS").ToString();

or the following

string STATUS= ((DataRowView)e.Item.DataItem)["STATUS"].ToString();

I always get the Value of the first Row, it does not get the value of the row that
was clicked, how do I get the value of the row that was

clicked considering i'm firing it form Client? Thank you.
Jayesh Goyani
Top achievements
Rank 2
 answered on 06 Feb 2013
1 answer
109 views

I am working with the RadButton inside the User Control...

<telerik:RadButton ID="tbnCancel"
                   runat="server"
                   Text="Cancel"
                   OnClientClicked="CloseEditFormTodoList" >
</telerik:RadButton>

And I am Calling javascript Function for Closing User Control


function CloseEditFormTodoList(sender, eventArgs) {

    var masterTable = $find("<%= RadGrid1.ClientID %>").get_masterTableView();
    masterTable.cancelAll();
    return false;
}

My User Control was Closed But the Page is postback.

How to avoid Postback?




Slav
Telerik team
 answered on 06 Feb 2013
1 answer
144 views
I want to add some data to my scheduler with my common RadScheduler1_AppointmentInsert method but somehow its not working ...  maybe I'm totally wrong but I thing that should work some how like that ... 
do i need to parse some thing bc
Tilte = Varchar
FromDate/ToDate = DateTime
RecurrenceRule/RecurrenceRuleID = int
Houers = float 
protected void RadScheduler1_AppointmentInsert(object sender, SchedulerCancelEventArgs e)
       {
           if (ExceedsLimit(e.Appointment))
           {
               e.Cancel = true;
               RegisterScript();
           }
           else
           {
                
               int id = HtUser.GetUserIdByLogin(Page.User.Identity.Name);
               //e.Appointment.Attributes.Add("UserId", id.ToString());
               HtVacationDay vacationDay = new HtVacationDay();
 
               vacationDay.Title = e.Appointment["Title"];
               vacationDay.FromDate =e.Appointment["FromDate"];
               vacationDay.ToDate = e.Appointment["ToDate"];
               vacationDay.RecurrenceRule = e.Appointment["RecurrenceRule"];
               vacationDay.RecurrenceRuleID = e.Appointment["RecurrenceRuleID"];
               vacationDay.Hours = e.Appointment["Hours"];
           }
       }
thanks for help and fast answer 
Plamen
Telerik team
 answered on 06 Feb 2013
4 answers
267 views
Hello. I do not know if this is covered in any of your online documentation, but I could not find my answer anywhere on your site.

I am trying to have "liquid" tab widths in our implementation of your RadTabStrip component (i.e., conforming ONLY to the width that the text in the tab takes up, so not a fixed width, but with the same padding, alignment, etc. for each tab) not utilizing the components pre-existing skins but utilizing a background image of our own creation. It seems like this liquid type of layout that expands or contracts based on text in the tab occurs automatically when using Telerik skins in the demos. What styling information do I have to give the tabs (either for the strip itslef and/or the <ul>, <li>, etc.) so that it can achieve this liquid width for each tab.

Thank you for your prompt attention. jk
Jeanne
Top achievements
Rank 1
 answered on 06 Feb 2013
2 answers
501 views
So I have a radgrid on a form. right before the radgrid aspx code starts, I have set the row property of visible = false (ex:
<tr runat="server" id="rw1" visible="false">
On my code behind (using VB.NET) I have set the btnShowGrid_Click event to this:
rw1.visible = true
grd1.visible=true
btnHideGrid.visible = true
....
The problem I am encountering is that I press this button for the first time on the form and it will only show the row, so I have to click it again to show the radgrid.
When I click on the "Hide Grid" button, the row and grid hide, and then I click the "Show Grid" button again and everything is displayed, I dont need to click on it again.
Why is this happening?

By the way the radgrid visible property is set to true not false.
Carina
Top achievements
Rank 1
 answered on 05 Feb 2013
2 answers
133 views
I encoutered different problems with RadCalendar and his Header/Footer Templates:

1 - When I define a Telerik control (e.g. RadButton or RadComboBox) in the Header or Footer, then when I use $find on another Telerik control (a control which is not on the template) it return null, which was working before I add the control to the template.

2 - Because of problem #1, I use standard ASP controls like asp:Button and asp:DropDrownList but when these control are not added to the designer by Visual Studio so I cannot access them from C# or with "<%= MyControl.ClientID %>". I have to hardcode the final ID in javascript to be able tp use $get, which is not easy because my calendar is in a User Control so the ID is hard to predict.

3 - In the header template, when I put my asp:DropDownList, the control is visible but the list items is not shown. I think the list is under the calendar because when I put the control in the footer I can see it. I tried to set a very high z-index to the DropDownList with no success. I also tried to put a lower z-index to the calendar with no success either.

Any suggestions to fix these bugs...
Marc
Top achievements
Rank 1
 answered on 05 Feb 2013
1 answer
147 views
So I've got a control that uses a radcombobox. Said control exists in two nearly identical pages, but on one of the pages it's empty. Doing a step through on the codebehind shows that the datasource is binding correctly and is populated with information.

So I'm left here scratching my head trying to figure out why the combobox on this one page is always empty. In both cases the combobox is in a separate table above a radgrid, and is loaded when the grid calls it's NeedDataSource function on postback (after search, the box is used to determine an action to take against an item in the list).

It looks as if everything is fine on the server side.

<telerik:RadComboBox id="actionbox1" Runat="server"
        ToolTip="Select a Bill action" MarkFirstMatch="True" EnableLoadOnDemand="false" ShowDropDownOnTextboxClick="False" Width="176px">
</telerik:RadComboBox>
Chris
Top achievements
Rank 1
 answered on 05 Feb 2013
2 answers
2.9K+ views
hi,

I have rad grid control and radcompobox, now whenever I change radcombobox index, the page is post back and RadGrid1_NeedDataSource will be fired again with different datasource (because when changing combobox index the sql statment is changed and datatable is changed too) and the grid should be changed, but the problem its remaining same as it is!!

when I click refresh button in radgrid, then content of grid changed!

so the question would be, how to refresh datagrid after assigning datasource to different table?
Fernando
Top achievements
Rank 1
 answered on 05 Feb 2013
Narrow your results
Selected tags
Tags
+? more
Top users last month
Boardy
Top achievements
Rank 2
Veteran
Iron
Benjamin
Top achievements
Rank 3
Bronze
Iron
Veteran
ivory
Top achievements
Rank 1
Iron
Iron
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
ClausDC
Top achievements
Rank 2
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Boardy
Top achievements
Rank 2
Veteran
Iron
Benjamin
Top achievements
Rank 3
Bronze
Iron
Veteran
ivory
Top achievements
Rank 1
Iron
Iron
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
ClausDC
Top achievements
Rank 2
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?