To reproduce: 1. Drag and drop RadPageView on the form 2. Select the control and open a smart tag 3. You will see that the 'Dock in parent container' option is not added
Hello, PageView with Windows8 Theme, ViewMode Stack, Stack Position Left Tabs are drawn incorrectly, see attachment. can i work around this issue? Thanks
1. Place a RadPageView in ExplorerBar view mode on a from. 2. Add page and place any RadControl in the page content panel. 3. Close (Collapse) the page. 4. Save and close the form. 5. Open the form and open(expand) the page and you will see that the control will be stretched more than when you saved the form.
To reproduce: - Add RadPageView change the view to ExplorerBar and add some pages with controls. - Start the application expand all pages and scroll. Workaround: class MyPageView : RadPageView { protected override RadPageViewElement CreateUI() { if (this.ViewMode == PageViewMode.ExplorerBar) { return new MyExplorerBarElement(); } return base.CreateUI(); } } class MyExplorerBarElement : RadPageViewExplorerBarElement { protected override bool IsChildElementExternal(Telerik.WinControls.RadElement element) { return !(element is RadPageViewElementBase) && base.IsChildElementExternal(element); } protected override Type ThemeEffectiveType { get { return typeof(RadPageViewExplorerBarElement); } } }
ADD. RadPageView - allow RadPageViewItems to accept other RadElements. Currently, they are not arranged.
To reproduce: 1. Add a RadPageView with no pages and set its Dock property to Fill. 2. Set the ViewMode property to ExplorerBar at design time. 3. Use the following code snippet: private void AddOutputPage(int index) { string title = "Test-Page " + index; RadPageViewPage page = new RadPageViewPage(title); this.radPageView1.Pages.Add(page); } private void Form1_Load(object sender, EventArgs e) { for (int i = 0; i < 20; ++i) AddOutputPage(i); } As a result the current page header at the top of the RadPageView is not displayed until you resize the pageview.
Steps to reproduce: 1. Add a RadPageView to a form and add a page 2. Add some controls to the page. 3. Open the RadPageView smart tag and click Remove Page 4. Select from Visual Studio Edit->Undo and you will see that the page will be restored but the controls on it will not be restored properly. If one removes the page using the keyboard Delete key the undo functionality of VS works correctly.
Workaround: public Form1() { InitializeComponent(); this.radPageView1.RightToLeft = System.Windows.Forms.RightToLeft.Yes; } public class CustomPageView : RadPageView { public override string ThemeClassName { get { return typeof(RadPageView).FullName; } } protected override RadPageViewElement CreateUI() { switch (this.ViewMode) { case PageViewMode.Strip: return new CustomRadPageViewStripElement(); default: return base.CreateUI(); } } } public class CustomRadPageViewStripElement : RadPageViewStripElement { public CustomRadPageViewStripElement() { } protected override Type ThemeEffectiveType { get { return typeof(RadPageViewStripElement); } } protected override bool IsNextKey(Keys key) { if (this.RightToLeft) { if (key == Keys.Left) { return true; } else { return false; } } return base.IsNextKey(key); } protected override bool IsPreviousKey(Keys key) { if (this.RightToLeft) { if (key == Keys.Right) { return true; } else { return false; } } return base.IsPreviousKey(key); } }
The common for the other RadPageView modes approach for creating custom items does not work for ExplorerBar mode.
IMPROVE. RadPageView - in ExplorerBar mode, add a method which will scroll the item into view and the item will be on the top on the control. Currently, the ScrollToItem method, scrolls to the item and whenever it finds it the scrolling is stopped. Alternatively, add a method which will ensure that the item and its content are is visible. Resolution: Add the ScrollToControl method. Please take a look at the following code snippet how to use it: RadPageViewExplorerBarElement view = radPageView1.ViewElement as RadPageViewExplorerBarElement; view.ScrollToControl(control);
When you dynamically remove a page from RadPageView when it is in ExplorerBarView, its header remains on your form.
To reproduce: Create a RadPageView and add these items: RadPageView pageView = new RadPageView { Parent = this, Dock = DockStyle.Fill, ViewMode = PageViewMode.Outlook }; pageView.Pages.Add(new RadPageViewPage("Machines")); pageView.Pages.Add(new RadPageViewPage("Users")); pageView.Pages.Add(new RadPageViewPage("Software")); pageView.Pages.Add(new RadPageViewPage("Queries")); pageView.Pages.Add(new RadPageViewPage("Reports")); pageView.Pages.Add(new RadPageViewPage("License Manager Servers")); You will see that the Users and Reports items will be auto ellipsed. Workaround: Change the font of the item. Changing the style should be enough: foreach (RadPageViewItem item in (pageView.ViewElement as RadPageViewOutlookElement).Items) { item.AutoEllipsis = false; }
Steps to reproduce: 1. Drag a page view to a form and add two pages to it. 2. Add a button on the first page. 3. Drag a button to the form and in its Click event handler add code to change the selected page of the page view to the second one. 4. Add an event handler for the Enter event of the button on the first page. Run the project and when you click the button to change the page you will see that the button on the first page gets the focus.
1. Add RadPageView to a form 2. In the code behind, after InitializeComponent set the ViewMode to ExplorerBar 3. Subscribe to the ItemCreating event of the control 4. Create three RadPageViewPages and add them to the control 5. Run the application
- create RadPageView in ExplorerBar mode with just one page - subscribe to the PageExpanded/PageCollapsed events and print the value of the IsContentVisible property in each event handler. The result is that when the event is fired the property is not set.
RadPageView - In BackstageView the tool tip of item close button is showing if you set ShowItemCloseButton property to true. Work Around: set ShowItemCloseButton property to false.
To reproduce: 1. Add RadPageView with several pages 2. Set the Text property of page to "Payers & Frequencies" this.radPageViewPage2.Text = "Payers & Frequencies"; RadPageViewStripElement strip = (RadPageViewStripElement)this.radPageView1.ViewElement; strip.StripButtons = StripViewButtons.All; 3. Run the project and open the ItemListMenu(available pages) and you will see that name of page is "Payers _Frequencies" Workaround: 1. Subscribe to ItemListMenuDisplaying event and set UseMnemonic property to false: void radPageView1_ItemListMenuDisplaying(object sender, RadPageViewMenuDisplayingEventArgs e) { foreach (RadMenuItem listMenuItem in e.Items) { TextPrimitive textPrimitive = listMenuItem.Layout.TextPanel.Children[0] as TextPrimitive; textPrimitive.UseMnemonic = false; } }
It would be nice if RadTabStrip/RadDock can support multiple rows of tabs.
One is not able to change the size of the buttons in the buttons panel of RadPageViewPage item. As a result you can get only square buttons.