<telerikDocking:RadDocking.DocumentHostContent>
<telerikDocking:RadSplitContainer>
<telerikDocking:RadPaneGroup>
<telerikDocking:RadDocumentPane x:Name="MainContent" Title="Description" Content="Some content" />
</telerikDocking:RadPaneGroup>
</telerikDocking:RadSplitContainer>
</telerikDocking:RadDocking.DocumentHostContent>
I get this error
Line: 453
Error: Sys.InvalidOperationException: Invalid XAML for control 'Xaml1'. [] (line 1, col 1381): AG_E_UNKNOWN_ERROR
When i change it to this
<telerikDocking:RadDocking.DocumentHostContent>
<telerikDocking:RadPaneGroup>
<telerikDocking:RadDocumentPane x:Name="MainContent" Title="Description" Content="Some content" />
</telerikDocking:RadPaneGroup>
</telerikDocking:RadDocking.DocumentHostContent>
removing the <telerikDocking:RadSplitContainer>
The app runs and all the other side panels work but the main page displays just a thin grey bar at the top about 10 px down. When I hover over the light grey bar it turns blue but the content I specify never shows up.
I'm using build 2008.3.1322.1020 of the telerik.windows.controls.dll
Thanks,
30 Answers, 1 is accepted
<telerikDocking:RadDocking.DocumentHostContent>
<telerikDocking:RadPaneGroup>
<telerikDocking:RadDocumentPane x:Name="MainContent" Height="400" Header="Description" Title="Description" Content="test" >
</telerikDocking:RadDocumentPane>
</telerikDocking:RadPaneGroup>
</telerikDocking:RadDocking.DocumentHostContent>
Please help
I tested the issue but I was not able to reproduce any of the things you reported.
I noticed that you were using a custom build. We might have included something that was not meant to be included in this build. Therefore, I would suggest that you try the same application with the latest official build available on our site (under your account, in the downloads section). If the problem still appears, I would kindly ask you to send a sample project so I can investigate the issue at our side. You can attach the files to a new support thread. If the problem is related to the build's version you are running, we will prepare another build for you.
Thanks for your time and cooperation.
Regards,
Boyan
the Telerik team
Check out Telerik Trainer, the state of the art learning tool for Telerik products.
Here is the support id 188537.
Thanks,
I rebuilt and tried all the difference resolutions mentioned on the internet but none worked. I even made a new website under IIS and still no difference.
So to prove in my mind that it was the docking that is causing this; I removed the docking reference, commented out the docking code in page.xaml. Built. FTP'd my .xap to the clientbin. Hit the webpage on a remote machine and oala it works. I then re-added the reference and uncommented the docking code, built, ftp'd. And I get the error on line 454, Char 17, Sys.InvalidOperationException: Invalid XAML for control 'Xaml1'. [] (line 1, col 1381): 1001 An error has occurred. I installed Futures on another machine (yes I know this is against the usage agreement! :P) and the project works fine on that machine with docking.
However it is possible it seems that with docking in the project it must reference something from the installation. I hope this helps you guys at Telerik find this.
Regards,
Perry
Thank you for your detailed bug report. We found a possible reason for the problem - there is a hack in RadDocking, that was added in order to workaround a bug in the Silverlight runtime. We found another way to workaround the bug and we will include it in the official release of the control. Hopefully, we will be able to provide you and Michael with a fixed build by the end of the week.
Best wishes,
Valeri Hristov
the Telerik team
Check out Telerik Trainer, the state of the art learning tool for Telerik products.
Thanks.
We will post a sticky thread in this forum containing the new build, hopefully by the end of the week, so stay tuned.
All the best,
Valeri Hristov
the Telerik team
Check out Telerik Trainer, the state of the art learning tool for Telerik products.
First, sorry for the late reply. I have attached the latest build of RadControls for Silverlight. If you experience problems with the included assemblies we will highly appreciate if you report them and will try to help and if necessary send you a newer version.
Please, open a new support ticket if you need the developer (non-trial) version of the attached assemblies.
Thank you for your help.
All the best,
Boyan
the Telerik team
Instantly find answers to your questions on the new Telerik Support Portal.
Check out the tips for optimizing your support resource searches.
Thanks,
Perry
The problem is that RadDocing.DocumentHostContent has been changed to RadDocking.DocumentHost. There are other changes like: the dropdown menu in RadPane has been integrated, changed logic on some of the commands.
I would like to remind you that this is still a development version and it could experience some bugs and not enabled features like "Floating" from the dropdown menu. Our Dock will be fully featured as of Q1 and we will include all Visual Studio features like drag and drop, compass menu, etc. The Q1 release is scheduled for March.
I have attached a sample project that should get you started.
Hope this helps.
Let me know how this goes.
Regards,
Boyan
the Telerik team
Instantly find answers to your questions on the new Telerik Support Portal.
Check out the tips for optimizing your support resource searches.
To answer the initial problem with the XAML1 error, it apparantly is fixed from my testing. Now to get rid of the Trial message.
Thanks,
Perry
I have downloaded the development (pre release dlls ) attached in this post and following code i was using before to add a pane to document host in code behind ( in response to a user action is no longer working).
---- Markup
<radDock:RadDocking x:Name="radDocking1" Loaded="radDocking1_Loaded">
<radDock:RadDocking.DocumentHost>
<radDock:RadPaneGroup x:Name="groupDocumentHostContent" >
</radDock:RadPaneGroup>
</radDock:RadDocking.DocumentHost>
--- Code Behind
documentPane =
new RadDocumentPane();
documentPane.Title = "Pane in Code Behind" ;
;documentPane.Content = new UserList();
this.groupDocumentHostContent..Panes.Add(documentPane);
documentPane.IsSelected = true;
documentPane.IsHidden =
false;
documentPane.IsPinned =
true;
documentPane.IsInDocumentHost =
true;
documentPane.Focus();
I understand that these are pre-release dlls . Same code works with docking assemblies from futures ( dokcing.dll File Version 2008.3.1217.1020) and is not working with ( docking.dll file version 2008.3.1417.1020)
Thanks
Rao
As you know there are some breaking changes in the latest build of RadDocking.
One of them is that Panes will be removed. So you should use Items property instead of Panes.
Also IsInDocumentHost will be readonly.
Kind regards,
Hristo
the Telerik team
Instantly find answers to your questions on the new Telerik Support Portal.
Check out the tips for optimizing your support resource searches.
---- Markup
<radDock:RadDocking x:Name="radDocking1" Loaded="radDocking1_Loaded">
<radDock:RadDocking.DocumentHost>
<radDock:RadPaneGroup x:Name="groupDocumentHostContent" />
</radDock:RadDocking.DocumentHost>
--- Code Behind
public static class Panehelper
{
public static RadPaneGroup DocumentHostContentGroupPane { get; set; }
public static void OpenPane(string paneTitle)
{
if (DocumentHostContentGroupPane != null)
{
// See If pane is already opened.
RadDocumentPane documentPane = null;
foreach (var pane in DocumentHostContentGroupPane.ChildrenOfType<RadDocumentPane>())
{
if (pane != null && pane.Title.Equals(paneTitle))
{
documentPane = pane;
break;
}
}
// If pane is there set focus Do not open a new one
if (documentPane != null)
{
documentPane.IsSelected =
true;
documentPane.Focus();
}
else
{
documentPane =
new RadDocumentPane();
documentPane.Title = paneTitle;
// Load Content
switch (paneTitle)
{
case "DashBoard":
documentPane.Content =
new UserRequestDetail();
break;
case "Users":
documentPane.Content =
new UserList();
break;
default :
documentPane.Content =
new PlaceHolder("Place Holder for " + paneTitle );
break;
}
// Add to Items
DocumentHostContentGroupPane.Items.Add(documentPane);
documentPane.IsSelected =
true;
documentPane.Focus();
}
}
}
}
Hi D V,
First thing that I don't like is holding static reference to the RadPaneGroup. Do not forget to remove the reference or your application will leak memory.
Second - you should put <radDock:RadPaneGroup x:Name="groupDocumentHostContent" /> in RadSplitContainer. This way you will be able to split the areas through code or Drag&Drop.
Third - RadPaneGroup is ItemsControls and therefore have Items property. You should use Items property instead of ChildrenOfType<RadDocumentPane>. This method should not be used.
This is the way to open RadDocumentPane in the documentHost (just add it to some group that is in the document host).
Let me know if you need more information.
Kind regards,
the Telerik team
Instantly find answers to your questions on the new Telerik Support Portal.
Check out the tips for optimizing your support resource searches.
<UserControl x:Class="SilverlightApplication9.Page"
xmlns="http://schemas.microsoft.com/client/2007"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:radDock="clr-namespace:Telerik.Windows.Controls;assembly=Telerik.Windows.Controls.Docking">
<Grid>
<radDock:RadDocking >
<radDock:RadDocking.DocumentHostContent>
<radDock:RadSplitContainer>
<radDock:RadPaneGroup>
<radDock:RadDocumentPane Header="Document 1" Title="Document 1" />
</radDock:RadPaneGroup>
</radDock:RadSplitContainer>
</radDock:RadDocking.DocumentHostContent>
<radDock:RadSplitContainer InitialPosition="DockedLeft">
<radDock:RadPaneGroup>
<radDock:RadPane Header="Pane Left 1" Content="Pane Left 1" />
<radDock:RadPane Header="Pane Left 2" Content="Pane Left 2" />
<radDock:RadPane Header="Pane Left 3" Content="Pane Left 3" />
<radDock:RadPane Header="Pane Left 4" Content="Pane Left 4" />
</radDock:RadPaneGroup>
</radDock:RadSplitContainer>
<radDock:RadSplitContainer InitialPosition="DockedRight">
<radDock:RadPaneGroup>
<radDock:RadPane Header="Pane Right 1" Content="Pane Right 1"/>
</radDock:RadPaneGroup>
</radDock:RadSplitContainer>
<radDock:RadSplitContainer InitialPosition="DockedTop">
<radDock:RadPaneGroup>
<radDock:RadPane Header="Pane Top 1" Content="Pane Top 1" />
<radDock:RadPane Header="Pane Left 2" Content="Pane Left 2" />
<radDock:RadPane Header="Pane Left 3" Content="Pane Left 3" />
<radDock:RadPane Header="Pane Left 4" Content="Pane Left 4" />
</radDock:RadPaneGroup>
</radDock:RadSplitContainer>
<radDock:RadSplitContainer InitialPosition="DockedRight">
<radDock:RadPaneGroup>
<radDock:RadPane Header="Pane Right 1" Content="Pane Right 1"/>
</radDock:RadPaneGroup>
</radDock:RadSplitContainer>
<radDock:RadSplitContainer InitialPosition="DockedTop">
<radDock:RadPaneGroup>
<radDock:RadPane Header="Pane Top 1" Content="Pane Top 1" />
</radDock:RadPaneGroup>
</radDock:RadSplitContainer>
</radDock:RadDocking>
</Grid>
</UserControl>
Did you get an exception when you run your example?
If so please create new RadPaneGroup() in the application constructor (before InitializeComponent method).
Next week we will have an official release where this problem is resolved.
Greetings,
Hristo
the Telerik team
Instantly find answers to your questions on the new Telerik Support Portal.
Check out the tips for optimizing your support resource searches.
1) I had to create a dummy <RadPaneGroup> in order to eliminate a parsing error and be able to correctly display the first docking panel
2) there appears to be a problem with inheritance of the DataContext for the children of the RadDock control, when they use dependency properties (appear to work with regular properties)
Is this there a workaround for this? Thanks.
We have fixed the parsing issue. With the Q1 release (the first official release for RadDocking) you will find a lot of new features.
About the DataContext I didn't quite understand what you try to achieve.
If you want to set the DataContext to some UIElement that is in the visual tree - this is not possible (Silverlight limitation).
You can set the DataContext to any object and it will propagate to all children.
Let me know if you have more questions.
Sincerely yours,
Hristo
the Telerik team
Instantly find answers to your questions on the new Telerik Support Portal.
Check out the tips for optimizing your support resource searches.
I am using the RadControls for Silverlight Q2 2009. My requirement is just similiar to the example code (dockfirstlook.zip) provided by Boyan of the Telerik team. I downloaded the application , it worked just fine. As for my requirement I need to create all the "DocumentHost container","LeftContainer" , "RightContainer" and "BottomContainer" dynamically ie. by writing code in code-behind C# File. While I do so, the arrangement of the controls within the RadDocking Controls goes haywire. All the four items have their base as the RadDocking control.Only the Document host Container , left container and right container are loaded. Moreover, the right and left containers are getting aligned parallely at one end and the document host container at the other right end. Am I mising something.. ? Is there any way, in the RadDocking Control, where I can specify the arrangement of controls within Radcontrol dynamically. Please suggest a solution, as this works perfectly well when I try to achieve the same through Xaml.
Thanks,
Preethi
Check the code snippet bellow:
using System; |
using System.Windows.Controls; |
using System.Windows.Media.Imaging; |
using Telerik.Windows.Controls; |
using Telerik.Windows.Controls.Docking; |
namespace DockFirstLook |
{ |
public partial class Page : UserControl |
{ |
public Page() |
{ |
InitializeComponent(); |
this.CreateDocumentHostContainer(); |
this.CreateLeftContainers(); |
this.CreateRightContainers(); |
this.CreateButtomContainers(); |
} |
private void CreateDocumentHostContainer() |
{ |
var splitContainer = new RadSplitContainer(); |
var paneGroup = new RadPaneGroup(); |
var documentPane = new RadDocumentPane() { Title = "Description", Content = "Some content" }; |
paneGroup.Items.Add(documentPane); |
splitContainer.Items.Add(paneGroup); |
radDocking1.DocumentHost = splitContainer; |
} |
private void CreateLeftContainers() |
{ |
var splitContainer = new RadSplitContainer() { MaxWidth = 600 }; |
splitContainer.InitialPosition = DockState.DockedLeft; |
DockingPanel.SetInitialSize(splitContainer, new System.Windows.Size(150, 150)); |
var paneGroup = new RadPaneGroup(); |
var radPane = new RadPane() |
{ |
Header = "Server Explorer", |
Content = new Image() |
{ |
Stretch = System.Windows.Media.Stretch.None, |
HorizontalAlignment = System.Windows.HorizontalAlignment.Left, |
Source = new BitmapImage(new System.Uri("RadDock/ServerExplorer.png", UriKind.RelativeOrAbsolute)) |
} |
}; |
var radPaneToolBox = new RadPane() |
{ |
Header = "Toolbox", |
Content = new Image() |
{ |
Stretch = System.Windows.Media.Stretch.None, |
HorizontalAlignment = System.Windows.HorizontalAlignment.Left, |
Source = new BitmapImage(new System.Uri("RadDock/Toolbox.png", UriKind.RelativeOrAbsolute)) |
} |
}; |
paneGroup.Items.Add(radPane); |
paneGroup.Items.Add(radPaneToolBox); |
splitContainer.Items.Add(paneGroup); |
radDocking1.Children.Add(splitContainer); |
} |
private void CreateRightContainers() |
{ |
var splitContainer = new RadSplitContainer() { MaxWidth = 679 }; |
splitContainer.InitialPosition = DockState.DockedRight; |
DockingPanel.SetInitialSize(splitContainer, new System.Windows.Size(200, 200)); |
var paneGroup = new RadPaneGroup(); |
var radPane = new RadPane() |
{ |
Header = "Solution Explorer", |
Content = new Image() |
{ |
Stretch = System.Windows.Media.Stretch.None, |
Source = new BitmapImage(new System.Uri("RadDock/SolutionExplorer.png", UriKind.RelativeOrAbsolute)) |
} |
}; |
var radPaneToolBox = new RadPane() |
{ |
Header = "Properties", |
Content = new Image() |
{ |
Stretch = System.Windows.Media.Stretch.None, |
Source = new BitmapImage(new System.Uri("RadDock/Properties.png", UriKind.RelativeOrAbsolute)) |
} |
}; |
paneGroup.Items.Add(radPane); |
paneGroup.Items.Add(radPaneToolBox); |
splitContainer.Items.Add(paneGroup); |
radDocking1.Children.Add(splitContainer); |
} |
private void CreateButtomContainers() |
{ |
var splitContainer = new RadSplitContainer(); |
splitContainer.InitialPosition = DockState.DockedBottom; |
DockingPanel.SetInitialSize(splitContainer, new System.Windows.Size(200, 200)); |
var paneGroup = new RadPaneGroup(); |
var radPane = new RadPane() |
{ |
Header = "Output", |
Content = new Image() |
{ |
Stretch = System.Windows.Media.Stretch.None, |
Source = new BitmapImage(new System.Uri("RadDock/Outlook.png", UriKind.RelativeOrAbsolute)) |
} |
}; |
var radPaneToolBox = new RadPane() |
{ |
Header = "Error List", |
Content = new Image() |
{ |
Stretch = System.Windows.Media.Stretch.None, |
Source = new BitmapImage(new System.Uri("RadDock/ErrorList.png", UriKind.RelativeOrAbsolute)) |
} |
}; |
paneGroup.Items.Add(radPane); |
paneGroup.Items.Add(radPaneToolBox); |
splitContainer.Items.Add(paneGroup); |
radDocking1.Children.Add(splitContainer); |
} |
} |
} |
Kind regards,
Kaloyan
the Telerik team
Instantly find answers to your questions on the new Telerik Support Portal.
Check out the tips for optimizing your support resource searches.
Thanks,
Preethi