Telerik Forums
UI for ASP.NET AJAX Forum
1 answer
236 views
Hi,

is there a control like the expnader control in wpf for asp.net Ajax?

Thanks
Best Regards
Rene
Princy
Top achievements
Rank 2
 answered on 19 May 2014
3 answers
255 views
Hi,

i use a Grid to Display a Datatable. I select the Data with an SQL-Statement. But how do i display the value from the inner join (second table)?

DataTable Kommentare
    {
        get
        {
            if (Object.Equals(Session["Kommentare"], null))
            {
                string query = "SELECT id, paketid, kommentar, bewertung, produkt FROM [kommentare] INNER JOIN [rating] ON kommentare.paketid = rating.id";
                DataTable dt = GetDataTable(query);
                 
                Session["Kommentare"] = dt;                               
            }
            return (DataTable)Session["Kommentare"];
        }
        set
        {
            Session["Kommentare"] = value;
        }
    }

How do is diaply "produkt " which is a field from table "kommentare"?

<telerik:GridBoundColumn AllowSorting="true" DataField="produkt" HeaderText="Produkt" SortExpression="Produkt" UniqueName="produkt"  />

will not work!

Thanks
best Regards
Rene
ITA
Top achievements
Rank 1
 answered on 19 May 2014
7 answers
535 views

Hi

I’m using hierarchy RadGrid for my application, in which I’m using the master/parent table to show the total amount of the detail table row amounts. So when the user updates the amount in detail table, I have to update the total amount in the master table.  But the master table doesn’t refresh automatically after the detail table is updated. When I try to rebind the grid after I update the detail table, it throws an exception saying “OrderDetailsID is neither a DataColumn nor a DataRelation for table Table.” I’m using ItemCommand method for updating detail table. Please help me to solve this problem.

 

Here is the Code:

 

protected void gridOrders_ItemCommand(object source, GridCommandEventArgs e)

{

lblStatus.Text = String.Empty;  
int OrderID; 

int OrderDetailsID;  
String ItemName;  
Double Amount;  

switch (e.CommandName.ToUpper())

{

case "UPDATE":  

if (e.Item.OwnerTableView.Name == "OrderDetails")

GridEditableItem editedItem = e.Item as GridEditableItem;

OrderDetailsID = int.Parse(editedItem.OwnerTableView.DataKeyValues[editedItem.ItemIndex]["OrderDetailsID"].ToString());    

OrderID = int.Parse(editedItem.OwnerTableView.DataKeyValues[editedItem.ItemIndex]["OrderID"].ToString());  

 ItemName = (editedItem[

"ItemName"].Controls[1] as RadTextBox).Text;  

 Amount = Double.Parse((editedItem["Amount"].Controls[1] as RadNumericTextBox).Text.ToString());  

 try 

 

 //Update Order Details 

 String cmdText = "UPDATE [OrderDetails] SET ItemName = '"+ ItemName +"', Amount = " + Amount + " WHERE OrderDetailsID = " + OrderDetailsID;

Database db = DatabaseFactory.CreateDatabase();
DbCommand dbCmd = db.GetSqlStringCommand(cmdText);
db.ExecuteNonQuery(dbCmd); 

 //Update Orders

 UpdateOrders(OrderID);

 gridOrders.MasterTableView.Rebind();  ---------------------------------------------->> This line causes the exception.

}

 catch (Exception ex)  

{

lblStatus.Text = ex.Message;

}

break;
}  

}

 

protected void gridOrders_NeedDataSource1(object source, GridNeedDataSourceEventArgs e)  

{

try
{
string cmdText = @"SELECT OrderID, PersonName, Amount FROM [Order]"
Database db = DatabaseFactory.CreateDatabase(); 
DbCommand dbCmd = db.GetSqlStringCommand(cmdText); 
DataSet orderDataSet = db.ExecuteDataSet(dbCmd); gridOrders.DataSource = (DataTable)orderDataSet.Tables[0];    

}

catch (Exception ex)
{

lblStatus.Text = ex.Message;

}

}

protected void gridOrders_DetailTableDataBind(object source, GridDetailTableDataBindEventArgs e)
{

GridDataItem dataItem = (GridDataItem)e.DetailTableView.ParentItem;

string OrderID = dataItem.GetDataKeyValue("OrderID").ToString();
if (e.DetailTableView.Name == "OrderDetails")

{ 

try
 

string cmdText = @"SELECT * FROM OrderDetails WHERE OrderID = " + OrderID; 

Database db = DatabaseFactory.CreateDatabase();  

DbCommand dbCmd = db.GetSqlStringCommand(cmdText);  

DataSet detailDataSet = db.ExecuteDataSet(dbCmd);

e.DetailTableView.DataSource = (DataTable)detailDataSet.Tables[0];

} 

catch (Exception ex)

{

lblStatus.Text = ex.Message;

}

}

}


 

<telerik:RadGrid ID="gridOrders" runat="server" AutoGenerateColumns="False" GridLines="None"  

 Width="600px" onitemcommand="gridOrders_ItemCommand" onneeddatasource="gridOrders_NeedDataSource1" ShowFooter="true"  

 ondetailtabledatabind="gridOrders_DetailTableDataBind" >

 <MasterTableView DataKeyNames="OrderID" Width="100%" Name="Orders">

 <DetailTables>

 <telerik:GridTableView DataKeyNames="OrderDetailsID,OrderID" Width="100%" runat="server"

 Name="OrderDetails" CommandItemDisplay="Top">

 <ParentTableRelation>

 <telerik:GridRelationFields DetailKeyField="OrderID" MasterKeyField="OrderID" />

 </ParentTableRelation>

 <Columns>

 <telerik:GridEditCommandColumn ButtonType="ImageButton">

 </telerik:GridEditCommandColumn>

 <telerik:GridTemplateColumn HeaderText="Item Name" UniqueName="ItemName">

 <ItemTemplate>

 <asp:Label ID="lblItemName" runat="server" Text='<%# Eval("ItemName") %>'></asp:Label>

 </ItemTemplate>

 <EditItemTemplate>

 <telerik:RadTextBox ID="tbItemName" runat="server" Text='<%# Bind("ItemName") %>'

 Width="135px" >

 </telerik:RadTextBox>

 <span style="color: Red">*</span>

 <asp:RequiredFieldValidator ID="rfvItemName" runat="server"

 ControlToValidate="tbItemName" ErrorMessage="Item Name is required!">

 </asp:RequiredFieldValidator>

 </EditItemTemplate>

 </telerik:GridTemplateColumn>

 <telerik:GridTemplateColumn HeaderText="Amount" UniqueName="Amount" >

 <ItemTemplate>

 <asp:Label ID="lblAmount" runat="server" Text='<%# Eval("Amount", "{0:C}") %>'></asp:Label>

 </ItemTemplate>

 <EditItemTemplate>

 <br />

 <telerik:RadNumericTextBox ID="tbAmount" Runat="server" Text='<%# Bind("Amount") %>'

 MinValue="0" Width="135px" NumberFormat-AllowRounding="True" NumberFormat-DecimalDigits="2">

</telerik:RadNumericTextBox>

<span style="color: Red">*</span>

<asp:RequiredFieldValidator ID="rfvAmount" runat="server"

ControlToValidate="tbAmount" ErrorMessage="Amount is required!">

</asp:RequiredFieldValidator>

</EditItemTemplate>

</telerik:GridTemplateColumn>

<telerik:GridButtonColumn CommandName="Delete" Text="Delete" ButtonType="ImageButton"

ConfirmText="Are you sure you want to delete this record?" ConfirmTitle="Confirm Delete" UniqueName="column">

</telerik:GridButtonColumn>

</Columns>

</telerik:GridTableView>

</DetailTables>

<Columns>

<telerik:GridBoundColumn DataField="PersonName" EmptyDataText="&amp;nbsp;"

 HeaderText="Name" UniqueName="PersonName">

 <HeaderStyle Height="20px" />

 </telerik:GridBoundColumn>

 <telerik:GridBoundColumn DataField="Amount" EmptyDataText="&amp;nbsp;" DataFormatString="{0:C}" Aggregate="Sum"

 HeaderText="Amount" UniqueName="Amount">

 <HeaderStyle Height="20px" />

 </telerik:GridBoundColumn>

 </Columns>

 </MasterTableView>

 <HeaderStyle HorizontalAlign="Center" />

 <FilterMenu EnableTheming="True">

 <CollapseAnimation Duration="200" Type="OutQuint" />

 </FilterMenu>

 </telerik:RadGrid>


Thanks,
Sentha.

 

Kostadin
Telerik team
 answered on 19 May 2014
1 answer
124 views
Hi,

I am using below javascript function to add some text in RadEditor on click of a button.

function TestFunction()
{
      var editor = $find("<%= EditorID.ClientID %>");
      editor.pasteHtml("Test");
}

I want the text to be added at the current position of cursor in editor.In chrome and mozilla it is working fine. but for IE it is adding the text at the start of editor.
Does anyone know how to resolve this problem with IE?

Nikolay
Telerik team
 answered on 19 May 2014
1 answer
192 views
I have a situation where a user uploads a file and we put that into a session variable and an imageeditor.
 protected void AsyncUpload1_FileUploaded(object sender, FileUploadedEventArgs e)
        {
            //Clear changes and remove uploaded image from Cache
          ImageEditor_CreateDonor.ResetChanges();
        //   Context.Cache.Remove(Session.SessionID + "UploadedFile");
            using (Stream stream = e.File.InputStream)
            {
                byte[] imgData = new byte[stream.Length];
                stream.Read(imgData, 0, imgData.Length);
                MemoryStream ms = new MemoryStream();
                ms.Write(imgData, 0, imgData.Length);

                Context.Cache.Insert(Session.SessionID + "UploadedFile", ms, null, DateTime.Now.AddMinutes(20), TimeSpan.Zero);
            }
        }

Then we put it into a image editor.
 protected void ImageEditor_CreateDonor_ImageLoading(object sender, ImageEditorLoadingEventArgs args)
        {
           
            //Handle Uploaded images
            if (!Object.Equals(Context.Cache.Get(Session.SessionID + "UploadedFile"), null))
           {
                using (EditableImage image = new EditableImage((MemoryStream)Context.Cache.Get(Session.SessionID + "UploadedFile")))
                {
                    args.Image = image.Clone();
                    args.Cancel = true;
                }
           }
        }
We the image is cropped we save the crop into the session variable.
 protected void RadImgEdt_ImageChanging(object sender, ImageEditorEventArgs e)
        {
           
            Context.Cache.Remove(Session.SessionID + "UploadedFile");
            Context.Cache.Insert(Session.SessionID + "UploadedFile", e.Image, null, DateTime.Now.AddMinutes(20), TimeSpan.Zero);
        }

Now once we save, we want to save in the db which is a byte[] format, it doesn't save correctly. (I will the comments in to show the various things I have tried.
protected void BtnDonorSave_Click(object sender, EventArgs e)
        {
            Boolean isLandingPage = false;
            string rtxtScholarshipName = this.txtScholarshipName.Text;
            string rtxtScholarshipDesc = this.txtScholarshipDesc.Text;
            byte[] fileData;


            MemoryStream file;
            EditableImage eImage;
            try
            {
                //UploadedFile file = AsyncUpload1.UploadedFiles[0];
                //fileData = new byte[file.InputStream.Length];
                //file.InputStream.Read(fileData, 0, fileData.Length);
              
                 file =
                     (MemoryStream) Context.Cache.Get(Session.SessionID + "UploadedFile");
                
                
               // UploadedFile file = AsyncUpload1.UploadedFiles[0];
               // var file = Context.Cache[(Session.SessionID + "UploadedFile")] as  MemoryStream;
                 fileData = new byte[file.Length];
                 file.Read(fileData, 0, fileData.Length);
            }

            catch (ArgumentOutOfRangeException e1)
            {
                Response.Write("<script>alert('Donor cannot be added without an image');</script>");
               
                return;
            }
       

            Int32 rcollegeId = Convert.ToInt32(this.collegeId.SelectedValue);
            string rtxtNotes = this.txtNotes.Text;
            if (chkBxNotes.Checked == true)
                isLandingPage = true;


            db.CreateDonor(rcollegeId, rtxtScholarshipName, rtxtScholarshipDesc, ReadFully(Context.Cache.Get(Session.SessionID + "UploadedFile") as MemoryStream), rtxtNotes, User.Identity.Name, DateTime.Now, isLandingPage.ToString()).Execute();
            //Response.Write("<script>alert('Donor Created');</script>");
            Session["CollDiv"] = collegeId.SelectedValue;
            Response.Redirect("DonorProfiles.aspx");
        }

So after save when I try to view the image it is a bad image.

Anyone know how to save a cropped image into a database from an imageeditor?

Thanks





Vessy
Telerik team
 answered on 19 May 2014
5 answers
145 views
Hi all,
I used Splitter Control to develop my Project. I have a problem below:
1/ When the Text is very long=> the scrollbar is shown
2/ We click on the scrollbar and drag down=> 2 splitter is drag too

I want to fix the position of the splitter.

Please view some images in attached file.


Please help me to solve it

Thanks alot 
Vessy
Telerik team
 answered on 19 May 2014
1 answer
92 views
Hi,
I need to show the fields name in my fields window with an alias. Is it possible?
My pivotgrid is populated with an object like this:

public class ReportModelObject
    {
        private string m_CompanyCode;
        private string m_CompanyDescription;
        private string m_CountryCode;
        private string m_CountryDescription;
        private string m_SiteCode;
        private string m_SiteDescription;
 
        public ReportModelObject()
        {
 
        }
 
        public string CompanyCode
        {
            get { return m_CompanyCode; }
            set { m_CompanyCode = value; NotifyPropertyChanged("CompanyCode"); }
        }
        public string CompanyDescription
        {
            get { return m_CompanyDescription; }
            set { m_CompanyDescription = value; NotifyPropertyChanged("CompanyDescription"); }
        }
        public string CountryCode
        {
            get { return m_CountryCode; }
            set { m_CountryCode = value; NotifyPropertyChanged("CountryCode"); }
        }
        public string CountryDescription
        {
            get { return m_CountryDescription; }
            set { m_CountryDescription = value; NotifyPropertyChanged("CountryDescription"); }
        }
        public string SiteCode
        {
            get { return m_SiteCode; }
            set { m_SiteCode = value; NotifyPropertyChanged("SiteCode"); }
        }
        public string SiteDescription
        {
            get { return m_SiteDescription; }
            set { m_SiteDescription = value; NotifyPropertyChanged("SiteDescription"); }
        }
         
        #region INotifyPropertyChanged Implementation
 
        [field: NonSerialized]
        public event PropertyChangedEventHandler PropertyChanged;
 
        protected void NotifyPropertyChanged(string name)
        {
            if (PropertyChanged != null)
                PropertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(name));
        }
 
        #endregion
         
    }
Mattia
Top achievements
Rank 2
 answered on 19 May 2014
10 answers
1.1K+ views
 

How to get Radgrid dropdown list template column selected value  in InsertCommand?


I used below, doesn't work.  Also, how to make the text filter work for a dropdownlist column?

 

 

 

DropDownList dl;

 

 

dl = newItem[

 

"Language"].Controls[0] as DropDownList;

 

 

 

 

String SelectLanguageID = dl.SelectedValue;

 

 

 

----------------------------------------------------------------
<
telerik:GridTemplateColumn HeaderText="Language" UniqueName="Language" 

 

 

 

AutoPostBackOnFilter="true" CurrentFilterFunction="Contains"

 

 

 

ShowFilterIcon="false" FilterControlWidth="200px" >

 

 

 

 

 

 

 

 

<EditItemTemplate> 

 

 

 

<asp:DropDownList ID="ddlLanguage" runat="server"> 

 

 

 

</asp:DropDownList> 

 

 

 

</EditItemTemplate> 

 

 

 

<FooterTemplate> 

 

 

 

<asp:Label ID="lblLanguage" runat="server">

 

 

 

 

 

</asp:Label> 

 

 

 

</FooterTemplate> 

 

 

 

<ItemTemplate>

 

 

 

 

 

 

 

 

 

 

 

 

</ItemTemplate>

 

 

 

 

 

 

 

 

</telerik:GridTemplateColumn>


Thanks!

Eyup
Telerik team
 answered on 19 May 2014
0 answers
75 views
I use telerik pie chart and I create it on server (from DB):

        private void cViolationsPerTime_NeedDataSource(object sender, EventArgs e)
        {
            Telerik.Reporting.Processing.Chart procChart = (Telerik.Reporting.Processing.Chart)sender;

            procChart.DataSource = BLL.BO.Audit.ExecuteAuditCommand(GenerateViolationsPerTimeSql(filters, "All"), type, conn, fromDate, toDate);

            Telerik.Reporting.Charting.ChartSeries csViolationsPerTime = new Telerik.Reporting.Charting.ChartSeries();
            csViolationsPerTime.DataYColumn = "NumOfViolations";
            csViolationsPerTime.Type = Telerik.Reporting.Charting.ChartSeriesType.Pie;
            csViolationsPerTime.DataLabelsColumn = "timeslot";

            csViolationsPerTime.Appearance.LegendDisplayMode = Telerik.Reporting.Charting.ChartSeriesLegendDisplayMode.ItemLabels;
            csViolationsPerTime.Appearance.ShowLabelConnectors = true;
            csViolationsPerTime.Appearance.TextAppearance.TextProperties.Font = new System.Drawing.Font("Calibri", 7F);

            cViolationsPerTime.Series.Clear();
            cViolationsPerTime.Series.Add(csViolationsPerTime);

        }


Attached screen shot with the result I get.
I want to get different legend then the data labels.
How can I bind a different column to the legend?

This is my SQL result:
timeslot     numOfViolations
10:00-12:00      40
12:00-14:00      10
14:00-16:00      8

etc...

I want each part of the pie to display the number of violations, and in legend I want to see the time slot.       


Covertix
Top achievements
Rank 1
 asked on 19 May 2014
3 answers
342 views
I have a rad splitter, inside that i have two RadPanes named as "rLeftPane" and "rContentPane".

In "rLeftPane" RadPane (ie. LEFT RadPane) I am loading an ASP.NET usercontrol which behaves as a menu, the usercontrol basically, is nothing but a RadWindow.

Now inside the "rContentPane" RadPane(ie. RIGHT RadPane) I am having another RadWindow named as "rwMain", which is used to load the aspx pages (combination of master page and content page), which is loaded in AJAX call and does not postback's the page.

Now what I want is, this, staying inside the "rContentPane" RadPane's (ie. RIGHT RadPane) RadWindow, at page loading, I want to access a control's present inside RadWindow which is in "rLeftPane" RadPane(ie. LEFT RadPane).

Here is the code :

<telerik:RadSplitter ID="Splitter" runat="server" Width="100%" Height="100%" VisibleDuringInit="false"
            Skin="Office2007" OnClientResizing="Resizing">

            <telerik:RadPane ID="rLeftPane" runat="server" Width="200" MinWidth="200" MaxWidth="200"
                OnClientCollapsed="WindowShow" OnClientExpanded="WindowShow" BackColor="DarkGray">

                <ERPx:LeftMainMenu ID="ucLeftMainMenu" runat="server" /> // This is my UserControl

            </telerik:RadPane>

            <telerik:RadSplitBar ID="VerticalSplitBar" runat="server" CollapseMode="Forward" EnableResize="false" />

            <telerik:RadPane ID="rContentPane" runat="server">

                <telerik:RadWindow ID="rwMain" runat="server" VisibleOnPageLoad="true" ShowContentDuringLoad="false"
                    OnClientShow="WindowShow" VisibleStatusbar="False" Behaviors="None" EnableShadow="false" OnClientBeforeClose="OnClientBeforeClose1" OnClientPageLoad="WindowLoad" IconUrl="images/18_users.gif" Skin="Office2007">
                </telerik:RadWindow>

            </telerik:RadPane>
        </telerik:RadSplitter>

Please help me out.

Thanks.
Vessy
Telerik team
 answered on 19 May 2014
Narrow your results
Selected tags
Tags
+? more
Top users last month
Hiba
Top achievements
Rank 1
Iron
Iron
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
Max
Top achievements
Rank 1
Veteran
Iron
Alina
Top achievements
Rank 1
Rakhee
Top achievements
Rank 1
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Hiba
Top achievements
Rank 1
Iron
Iron
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
Max
Top achievements
Rank 1
Veteran
Iron
Alina
Top achievements
Rank 1
Rakhee
Top achievements
Rank 1
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?