Telerik Forums
UI for ASP.NET AJAX Forum
7 answers
1.7K+ views
Hi,
I have a number of checkboxes within a grid. The state of these checkboxes change the enabled state of other columns within the grid when in edit mode.
 
<telerik:RadGrid ID="RadGrid1" 
                     Skin="Vista"   
                     runat="server"   
                     Width="1050"   
                     GridLines="None" 
                     AllowAutomaticInserts="false" 
                     AutoGenerateColumns="False" 
                     AllowMultiRowSelection="False"   
                     AllowSorting="False"   
                     AllowPaging="False" 
                     OnItemCommand="RadGrid1_ItemCommand"   
                     OnItemCreated="RadGrid1_ItemCreated" 
                     OnUpdateCommand="RadGrid1_UpdateCommand"   
                     OnNeedDataSource="RadGrid1_NeedDataSource" 
                     OnItemDataBound="RadGrid1_ItemDataBound"   
                     ShowStatusBar="true"   
                     OnDeleteCommand="RadGrid1_DeleteCommand">  
            <PagerStyle Mode="NumericPages"></PagerStyle> 
            <MasterTableView DataKeyNames="Id" AllowMultiColumnSorting="True" EditMode="InPlace" CommandItemStyle-Height="28px" CommandItemDisplay="Top">  
            <CommandItemTemplate> 
                      <table style="width:100%">  
                        <tr> 
                            <td> 
                                <asp:LinkButton ID="btnEditSelected" runat="server" CommandName="EditSelected" Visible='<%# RadGrid1.EditIndexes.Count == 0 %>'><img style="border:0px;vertical-align:middle;" alt="" src="./Images/Edit.gif" />Edit selected route</asp:LinkButton>&nbsp;&nbsp;  
                                <asp:LinkButton ID="btnUpdateEdited" runat="server" CommandName="UpdateEdited" Visible='<%# RadGrid1.EditIndexes.Count > 0 %>'><img style="border:0px;vertical-align:middle;" alt="" src="./Images/Update.gif" />Update</asp:LinkButton>&nbsp;&nbsp;  
                                <asp:LinkButton ID="btnCancel" runat="server" CommandName="CancelAll" Visible='<%# RadGrid1.EditIndexes.Count > 0 || RadGrid1.MasterTableView.IsItemInserted %>'><img style="border:0px;vertical-align:middle;" alt="" src="./Images/Cancel.gif" />Cancel editing</asp:LinkButton>&nbsp;&nbsp;  
                                <asp:LinkButton ID="btnInitInsert" runat="server" CommandName="InitInsert" Visible='<%# !RadGrid1.MasterTableView.IsItemInserted %>'><img style="border:0px;vertical-align:middle;" alt="" src="./Images/AddRecord.gif" />Add new route</asp:LinkButton>&nbsp;&nbsp;  
                                <asp:LinkButton ID="btnInsert" runat="server" CommandName="PerformInsert" Visible='<%# RadGrid1.MasterTableView.IsItemInserted %>'><img style="border:0px;vertical-align:middle;" alt="" src="./Images/Insert.gif" /> Add route</asp:LinkButton>&nbsp;&nbsp;  
                                <asp:LinkButton ID="btnDeleteSelected" runat="server" CommandName="DeleteSelected"><img style="border:0px;vertical-align:middle;" alt="" src="./Images/Delete.gif" />Delete selected route</asp:LinkButton>&nbsp;&nbsp;  
                            </td> 
                            <td style="text-align:right;"><asp:LinkButton ID="btnRefresh" runat="server" CommandName="RebindGrid"><img style="border:0px;vertical-align:middle;" alt="" src="./Images/Refresh.gif" />Refresh</asp:LinkButton></td>  
                        </tr> 
                    </table>       
            </CommandItemTemplate> 
            <Columns> 
                <telerik:GridBoundColumn UniqueName="Id" DataField="Id" ReadOnly="true" Visible="false" /> 
                <telerik:GridTemplateColumn UniqueName="TemplateColumn" ItemStyle-Width="30px" HeaderText="">  
                    <ItemTemplate> 
                        <asp:Panel ID="Panel1" runat="server">  
                            <asp:CheckBox ID="Enabled" runat="server" AutoPostBack="true" Checked='<%# Eval("Enabled") %>' OnCheckedChanged="EnabledChanged" /> 
                        </asp:Panel> 
                    </ItemTemplate> 
                </telerik:GridTemplateColumn> 
                <telerik:GridTemplateColumn UniqueName="TemplateColumn" ItemStyle-Width="50px" HeaderText="Metabolite" HeaderStyle-HorizontalAlign="Center">  
                    <ItemTemplate> 
                        <asp:Panel ID="Panel2" runat="server" HorizontalAlign="Center">  
                            <asp:CheckBox ID="Metabolite" runat="server" AutoPostBack="true" Checked='<%# Eval("Metabolite") %>' /> 
                        </asp:Panel> 
                    </ItemTemplate> 
                </telerik:GridTemplateColumn> 
                <telerik:GridDropDownColumn UniqueName="Pathway" ItemStyle-Width="170px" ListTextField="PathwayName" ListValueField="Pathway" ListDataMember="Pathways" DataField="Pathway" HeaderStyle-HorizontalAlign="Left" HeaderText="Pathway" DropDownControlType="RadComboBox" /> 
                <telerik:GridDropDownColumn UniqueName="Enzyme" ItemStyle-Width="170px" ListTextField="EnzymeName" ListValueField="Enzyme" ListDataMember="KineticEnzymes" DataField="Enzyme" HeaderStyle-HorizontalAlign="Left" HeaderText="Enzyme" DropDownControlType="RadComboBox" /> 
                <telerik:GridTemplateColumn UniqueName="TemplateColumn" ItemStyle-Width="5px" ItemStyle-HorizontalAlign="Center" HeaderText="">  
                    <ItemTemplate> 
                        <asp:Panel ID="Panel3" runat="server">  
                            <asp:CheckBox ID="ClintVmaxSwitch" runat="server" Checked='<%# Eval("ClintVmaxSwitch") %>' AutoPostBack="true" OnCheckedChanged="ClintVmaxSwitchChanged" /> 
                        </asp:Panel> 
                    </ItemTemplate> 
                </telerik:GridTemplateColumn> 
                <telerik:GridBoundColumn UniqueName="CLint" ItemStyle-Width="50px" ItemStyle-HorizontalAlign="Center" DataField="CLint" HeaderText="CLint" HeaderStyle-HorizontalAlign="Center" /> 
                <telerik:GridBoundColumn UniqueName="VMax" ItemStyle-Width="50px" ItemStyle-HorizontalAlign="Center" DataField="VMax" HeaderText="Vmax" HeaderStyle-HorizontalAlign="Center" /> 
                <telerik:GridBoundColumn UniqueName="KmKs" ItemStyle-Width="50px" ItemStyle-HorizontalAlign="Center" DataField="KmKs" HeaderText="Km(Ks)" HeaderStyle-HorizontalAlign="Center" /> 
                <telerik:GridBoundColumn UniqueName="fumic" ItemStyle-Width="50px" DataFormatString="{0:N3}" ItemStyle-HorizontalAlign="Center" DataField="fumic" HeaderText="fumic" HeaderStyle-HorizontalAlign="Center" /> 
                <telerik:GridTemplateColumn UniqueName="TemplateColumn" ItemStyle-Width="5px" ItemStyle-HorizontalAlign="Center" HeaderText="">  
                    <ItemTemplate> 
                        <asp:Panel ID="Panel4" runat="server">  
                            <asp:CheckBox ID="SystemEnabled" runat="server" AutoPostBack="true" Checked='<%# Eval("SystemEnabled") %>' OnCheckedChanged="SystemEnabledChanged" /> 
                        </asp:Panel> 
                    </ItemTemplate> 
                </telerik:GridTemplateColumn> 
                <telerik:GridDropDownColumn UniqueName="System" ItemStyle-Width="170px" ListTextField="rCYPsystemName" ListValueField="System" ListDataMember="rCYPsystems" DataField="System"  HeaderText="rCYP system" HeaderStyle-HorizontalAlign="Left" DropDownControlType="RadComboBox" /> 
                <telerik:GridBoundColumn UniqueName="Value" DataField="Value" ItemStyle-Width="50px" ItemStyle-HorizontalAlign="Center" HeaderText="ISEF" HeaderStyle-HorizontalAlign="Center" /> 
                <telerik:GridTemplateColumn UniqueName="TemplateColumn" ItemStyle-Width="5px" ItemStyle-HorizontalAlign="Center" HeaderText="">  
                    <ItemTemplate> 
                        <asp:Panel ID="Panel5" runat="server">  
                            <asp:CheckBox ID="bATypicalSwitch" runat="server" AutoPostBack="true" Checked='<%# Eval("bATypicalSwitch") %>' OnCheckedChanged="bATypicalSwitchChanged" /> 
                        </asp:Panel> 
                    </ItemTemplate> 
                </telerik:GridTemplateColumn> 
                <telerik:GridBoundColumn UniqueName="Alpha" ItemStyle-Width="50px" ItemStyle-HorizontalAlign="Center" DataField="Alpha" HeaderText="α" HeaderStyle-HorizontalAlign="Center" /> 
                <telerik:GridBoundColumn UniqueName="Beta" ItemStyle-Width="50px" ItemStyle-HorizontalAlign="Center" DataField="Beta" HeaderText="β" HeaderStyle-HorizontalAlign="Center" /> 
            </Columns> 
            <EditFormSettings CaptionFormatString="Edit details for route with Id {0}" CaptionDataField="Id">  
                <FormTableItemStyle Width="100%" Height="29px"></FormTableItemStyle> 
                <FormTableStyle GridLines="None" CellSpacing="0" CellPadding="2"></FormTableStyle> 
                <FormStyle Width="100%" BackColor="#eef2ea"></FormStyle> 
                <EditColumn ButtonType="ImageButton" /> 
            </EditFormSettings> 
        </MasterTableView> 
        <ClientSettings> 
                <Selecting AllowRowSelect="True" EnableDragToSelectRows="True" /> 
        </ClientSettings> 
</telerik:RadGrid> 

protected void EnabledChanged(object sender, System.EventArgs e)  
    {  
        //first reference the panel which wraps the checkbox control through the Parent property  
        CheckBox chkBox = (sender as CheckBox);  
// Do something  

Each checkbox has it's own OncheckedChanged event handler which enables/disables various columns. There seems to be a problem around when the event handler gets triggered. If you put a breakpoint within the event handler the run the app. When in the grid edit mode, if you check any checkbox the event handler triggers, if you uncheck it again it does not trigger the event handler. It seems like only half the functionality has been implemented.  I have tried many different ways including using checkbox columns instead of using your panels method and adding the autopostback and event handler programatically, auto-generating columns but it still only seems to fire the OnCheckedChanged event in one direction. I have looked through your knowledgebase/forums without joy. Any help appreciated.
Iana Tsolova
Telerik team
 answered on 05 Dec 2008
1 answer
138 views
In depolyment (obviously not in development), is there anyway to suppress the JavaScript messages?  Occasionally, if the AJAX callback fails then I'll get a malformed header error.  I don't want my users seeing the JavaScript errors at the bottom of the browser screen.

Thanks,
Joshua
Maria Ilieva
Telerik team
 answered on 05 Dec 2008
1 answer
188 views
I have a RadAjaxManager on my masterpage, so Im using a RADAjaxManagerProxy on the content pages.
I have a Rotator that shows a larger version of a thumbnail when a user clicks the thumbnail.  When the thumbnail is clicked, I get a full page postback instead of a partial postback.  I cant see why, Ive setup the controls in the proxy manager, but I always get a full page postback;

<telerik:RadAjaxManagerProxy ID="RadAjaxManagerProxy1" runat="server">  
        <AjaxSettings> 
            <telerik:AjaxSetting AjaxControlID="thumbRotator">  
                <UpdatedControls> 
                    <telerik:AjaxUpdatedControl ControlID="imagePreview" LoadingPanelID="LoadingPanel1" /> 
                      
                </UpdatedControls> 
            </telerik:AjaxSetting> 
         
              
        </AjaxSettings> 
    </telerik:RadAjaxManagerProxy> 

Heres part of the markup for the rotator

<div class="GalleryRow">  
            <div class="MiddleLeft">  
                  
            </div> 
              
            <div class="preview" runat="server" id="detailsPanel">  
            <div class="ImageContainer">  
            <asp:Image ID="imagePreview" runat="server" ImageUrl="Images/spacer.gif" AlternateText="preview" BorderWidth="0"></asp:Image> 
            </div>    
            </div> 
            <div class="MiddleRight">  
                  
            </div> 
        </div> 
        <div class="GalleryRow">  
            <div class="BottomLeft">  
            <img src="Images/left2.gif" id="img_left" height="117" width="50" alt="" style="cursor: pointer" />      
            </div> 
            <div class="BottomMiddle">  
            <telerik:RadRotator ID="thumbRotator" runat="server" RotatorType="ButtonsOver" Width="450" 
                        Height="118px" ItemHeight="118" ItemWidth="145" FrameDuration="1" ScrollDirection="Left,Right" OnItemClick="ShowImage">  
                        <ItemTemplate> 
                            <div class="itemTemplate">  
                                <img src='<%# DataBinder.Eval(Container.DataItem, "Image") %>' alt='gallery image' 
                                    class="RotatorImage" /> 
                            </div> 
                        </ItemTemplate> 
                        <ControlButtons LeftButtonID="img_left" RightButtonID="img_right" /> 
                    </telerik:RadRotator>      
            </div> 
            <div class="BottomRight">  
            <img src="Images/right.gif" id="img_right" height="117" width="62" alt="" style="cursor: pointer" />      
            </div> 
        </div> 
 anybody shed some light on this ?
Svetlina Anati
Telerik team
 answered on 05 Dec 2008
3 answers
187 views
Get the following eror by simply having a radscheduler on the page without specifying (or returning 0 resources),
for a sample, see this thread http://www.telerik.com/community/forums/aspnet-ajax/scheduler/many-issues-bugs-suggestions-sample-provided.aspx

Could someone also please look and respond to that thread, i am getting a little desperate, its been 3 days and no response, I need to show this prototype to my boss if we are to decide on ur controls.

Server Error in '/Scheduler' Application.

Specified argument was out of the range of valid values.
Parameter name: index

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.ArgumentOutOfRangeException: Specified argument was out of the range of valid values.
Parameter name: index

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:

[ArgumentOutOfRangeException: Specified argument was out of the range of valid values.
Parameter name: index]
   System.Web.UI.ControlCollection.get_Item(Int32 index) +8665582
   System.Web.UI.WebControls.TableRowCollection.get_Item(Int32 index) +27
   Telerik.Web.UI.Scheduler.Views.SchedulerAllDayTable.OnPreRender(EventArgs e) +106
   System.Web.UI.Control.PreRenderRecursiveInternal() +80
   System.Web.UI.Control.PreRenderRecursiveInternal() +171
   System.Web.UI.Control.PreRenderRecursiveInternal() +171
   System.Web.UI.Control.PreRenderRecursiveInternal() +171
   System.Web.UI.Control.PreRenderRecursiveInternal() +171
   System.Web.UI.Control.PreRenderRecursiveInternal() +171
   System.Web.UI.Control.PreRenderRecursiveInternal() +171
   System.Web.UI.Control.PreRenderRecursiveInternal() +171
   System.Web.UI.Control.PreRenderRecursiveInternal() +171
   System.Web.UI.Control.PreRenderRecursiveInternal() +171
   System.Web.UI.Control.PreRenderRecursiveInternal() +171
   System.Web.UI.Control.PreRenderRecursiveInternal() +171
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +842
Peter
Telerik team
 answered on 05 Dec 2008
6 answers
394 views
Hello,

I was wondering how could I implement a behavior where, when using a grid with EditMode="PopUp", the page except the popup would be grayed-out. Something like ModalPopup from ASP.NET Ajax Toolkit. As far as I have seen on your demo site, I don't have this option. It would be really useful because it helps with visibility of a page when you have a larger pop up.

Thanks.
Sebastian
Telerik team
 answered on 05 Dec 2008
1 answer
114 views

I’m using component RadGrid. I need to represent RadGrid like ListView for that I’m using ItemTemplate. I’m creating it (ItemTemplate) on the server-side. Because in RadGrid the columns creating dynamically. Here my code example:

SearchGridItemTemplate.cs

public enum SearchGridItemTemplateType {ReportCardTemplate, InvestigationTemplate, ReportTemplate, InvestigationObjectTemplate};

    public class SearchGridItemTemplate : ITemplate

    {

        SearchGridItemTemplateType _templateType;

        public SearchGridItemTemplate (SearchGridItemTemplateType type)

           {

            _templateType = type;

           }

        public void InstantiateIn(System.Web.UI.Control container)

        {

            Literal literal = new Literal();

            literal.DataBinding += new System.EventHandler(literal_DataBinding);

 

            container.Controls.Add(literal);

        }

        void literal_DataBinding(object sender, System.EventArgs e)

        {

             //Some code…

        }

    }

Default.aspx.cs

protected void Page_Load(object sender, EventArgs e)

      {

             //Some code…

searchResultGrid.MasterTableView.ItemTemplate = new SearchGridItemTemplate (SearchGridItemTemplateType.ReportCardTemplate);

//Some code…

}

Everything works fine, but I have some problem. The problem is in next situation. I need to get data from the selected item. I’m doing its like this:

GridDataItem[] items = searchResultGrid.MasterTableView.GetSelectedItems();

            foreach (GridDataItem item in items)

            {

                    TableCell cell = item["ID"];

//Some code…

}

But in the GridDataItem I can’t get data that I need.

How I can make it? Can you send me example or reference to that problem?

Iana Tsolova
Telerik team
 answered on 05 Dec 2008
1 answer
233 views
How can I add a confirmation dialog to the context menu for the delete menu item? I have tried the 'OnClientItemClicking' property (see below), but get runtime error: 'OnClientItemClicking' property cannot be set declaratively.

 

 

<script type="text/javascript">

 function onClicking(sender, eventArgs)
 {
    var item = eventArgs.get_item();
    var proceed = confirm("Permanently delete this Date and ALL samples under it?");

    if (!proceed)
    {
        eventArgs.set_cancel(true);
    }
 }

</script>
 

<telerik:RadTreeViewContextMenu runat="server" ID="ChemicalDateMenu" ClickToOpen="True" Skin="Vista" OnClientItemClicking="onClicking">
 <Items>
  <telerik:RadMenuItem Text="Add New Sample" Value="ChemicalAdd" runat="server"></telerik:RadMenuItem>
  <telerik:RadMenuItem Text="Delete Sample" Value="ChemicalDelete" runat="server"></telerik:RadMenuItem>
 </Items>
 <CollapseAnimation Duration="200" Type="OutQuint" />
</telerik:RadTreeViewContextMenu>

Thx Marcel

 

 

 

 

 

 

 

 

 

Yana
Telerik team
 answered on 05 Dec 2008
1 answer
169 views
Dear Telerik Team
                            I am trying to use a RadTree Control as an ItemTemplate inside a RadCombo Control. I also want the treeView to get populated from the database using LoadOnDemand. For some reason I can't seem to get hold of the TreeView Control.
Strange behavior happens with different syntax.
----------------------------------------------------Problem 1------------------------------------------
If I define my ComboBox the Following Way which is Putting  
                        <Items>
                            <telerik:RadComboBoxItem Text="" Value="" />
                         </Items>

The Item_Requested Event is not firing.
<telerik:RadComboBox ID="ddlResource" runat="server" EnableLoadOnDemand="true" 
OnItemsRequested="RadComboBox1_ItemsRequested" Skin="WebBlue" Width="240px"
DropDownWidth="450" ItemRequestTimeout="500"
OnSelectedIndexChanged="ddlResource_SelectedIndexChanged">
<ItemTemplate>
   <div onclick="StopPropagation(event)">
      <telerik:RadTreeView ID="RadTreeView1" Width="100%" runat="server"                                                                                                   
              ShowLineImages="False"  Skin="WebBlue"
              Font-Names="Verdana" OnClientNodeClicked="ClientNodeClicked" Font-Size="Small">                                                                                                   
             </telerik:RadTreeView>
   </div>
 </ItemTemplate>
 <Items>
        <telerik:RadComboBoxItem Text="" Value="" />
 </Items>
 </telerik:RadComboBox>
Code Behind this way
protected void RadComboBox1_ItemsRequested(object sender, RadComboBoxItemsRequestedEventArgs e)
{

 RadTreeView treeView = ddlResource.Items[0].FindControl("RadTreeView1") as RadTreeView;

 if (treeView != null)
 {
    LoadTreeView(treeView);

  }

}


 

----------------------------------------------------Problem 2------------------------------------------
When I take the following lines away from the RadComboBox the ItemRequested Event is firing.
<Items>
        <telerik:RadComboBoxItem Text="" Value="" />
 </Items>
But when I change my CodeBehind to ddlResource.FindControl("RadTreeView1")  
treeView is returning null

 

 

protected void RadComboBox1_ItemsRequested(object sender, RadComboBoxItemsRequestedEventArgs e)
{

 RadTreeView treeView = ddlResource.FindControl("RadTreeView1") as RadTreeView;

 if (treeView != null)
 {
    LoadTreeView(treeView);

  }

}

 

I have tried a lot of things using <div> tag without <div>. But those did not make any difference. 

 

 

Please Help
Thanks
Himadri

 

Yana
Telerik team
 answered on 05 Dec 2008
1 answer
92 views
I have a rotator that used to work before I upgraded to Q32008.
It only rotates first image.

here is the code:

 

 

 

<telerik:RadRotator ID="RadRotator1"

 

 

                    runat="server"

 

 

                    DataSourceID="XmlDataSource1"

 

 

                    Skin="Web20"

 

 

                    FrameDuration="6000"

 

 

                    Height="300px"

 

 

                    ScrollDuration="600"

 

 

                    Width="650px" >

 

 

 

 

 

 

        <ItemTemplate>

 

 

 

                    <img alt="<%# XPath("/Files/item/title") %>" src="Images/<%# XPath("/Files/item/filename") %> " />

 

 

        </ItemTemplate>

 

 

 

 

 

 

</telerik:RadRotator>

 

 

 

 

 

 

<asp:XmlDataSource ID="XmlDataSource1" runat="server"

 

 

DataFile="~/App_Data/ImageRotator.xml" >

 

 

</asp:XmlDataSource>

 

my xml file looks like this

 

 

 


 

<?

 

xml version="1.0" encoding="utf-8" ?>

 

<

 

Files>

 

<

 

item>

 

<

 

filename>2008.jpg</filename>

 

<

 

title>2008 Text</title>

 

</

 

item>

 

<

 

item>

 

<

 

filename>banner4.jpg</filename>

 

<title>banner Text</title></

 

item>

 

<

 

item>

 

<

 

filename>04.png</filename>

 

<title>04 Text</title>
</

 

item>

 

</

 

Files>

 

can somebody give me a hint on what am I missing?

 

 

 

 

 


thanks

 

Tania
Top achievements
Rank 1
 answered on 05 Dec 2008
4 answers
224 views
Jim
Top achievements
Rank 1
 answered on 05 Dec 2008
Narrow your results
Selected tags
Tags
+? more
Top users last month
Shiori
Top achievements
Rank 2
Iron
Tien
Top achievements
Rank 1
Iron
Robert
Top achievements
Rank 1
Rob
Top achievements
Rank 4
Bronze
Bronze
Iron
Geoff
Top achievements
Rank 1
Want to show your ninja superpower to fellow developers?
Top users last month
Shiori
Top achievements
Rank 2
Iron
Tien
Top achievements
Rank 1
Iron
Robert
Top achievements
Rank 1
Rob
Top achievements
Rank 4
Bronze
Bronze
Iron
Geoff
Top achievements
Rank 1
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?