or
| private void SelectionChangedHandler(object sender, Telerik.Windows.Controls.SelectionChangeEventArgs e) |
| { |
| if (this.radGridView.SelectedItem != null) |
| { |
| this.radGridView.ScrollIntoView(radGridView.SelectedItem); |
| } |
| } |
| Private Sub BuildGrid(ByRef g As Telerik.Windows.Controls.RadGridView, ByRef d As IBIDData.Client) |
| Dim dt As New DataTable(g.Name) |
| dt.Columns.Add(0) |
| dt.Columns.Add(1) |
| Select Case g.Name |
| Case "grd1" |
| '// This is done after the call - grd1.Columns(0).Width = 80 |
| '// grd1.Columns(0).Background = System.Windows.Media.Brushes.GhostWhite |
| '// grd1.Columns(1).Width = 68 |
| dt.Rows.Add(New Object() {"Author", d.FieldStr(0, "Author")}) |
| dt.Rows.Add(New Object() {"Vendor", d.FieldStr(0, "Vendor")}) |
| dt.Rows.Add(New Object() {"Dept", d.FieldStr(0, "DptCode")}) |
| dt.Rows.Add(New Object() {"Publisher", d.FieldStr(0, "Publisher")}) |
| dt.Rows.Add(New Object() {"Pub. Date", d.FieldStr(0, "PubDate")}) |
| dt.Rows.Add(New Object() {"Last Sold", d.FieldStr(0, "LastDateSold")}) |
| dt.Rows.Add(New Object() {"Last Recv", d.FieldStr(0, "LastInvoiceDate")}) |
| Case "grd2" |
| dt.Rows.Add(New Object() {"List", d.FieldStr(0, "ListPrice")}) |
| dt.Rows.Add(New Object() {"Binding", d.FieldStr(0, "BookType")}) |
| dt.Rows.Add(New Object() {"Category 1", d.FieldStr(0, "Cat1")}) |
| dt.Rows.Add(New Object() {"Category 2", d.FieldStr(0, "Cat2")}) |
| dt.Rows.Add(New Object() {"Misc. 1", d.FieldStr(0, "Misc1")}) |
| dt.Rows.Add(New Object() {"Misc. 2", d.FieldStr(0, "Misc2")}) |
| dt.Rows.Add(New Object() {"", ""}) |
| Case "grd3" |
| dt.Rows.Add(New Object() {"Cost", d.FieldStr(0, "CostPrice")}) |
| dt.Rows.Add(New Object() {"Sell", d.FieldStr(0, "SellPrice")}) |
| dt.Rows.Add(New Object() {"Net", d.FieldStr(0, "NetPrice")}) |
| dt.Rows.Add(New Object() {"Retd YTD", d.FieldStr(0, "YTDReturns")}) |
| dt.Rows.Add(New Object() {"Retd LYR", d.FieldStr(0, "PYRReturns")}) |
| dt.Rows.Add(New Object() {"All Retd", d.FieldStr(0, "AllReturns")}) |
| dt.Rows.Add(New Object() {"All Sales", d.FieldStr(0, "AllSales")}) |
| Case "grd4" |
| dt.Rows.Add(New Object() {"On Hand", d.FieldStr(0, "OnHand")}) |
| dt.Rows.Add(New Object() {"TBO", d.FieldStr(0, "")}) 'fnTBO |
| dt.Rows.Add(New Object() {"On Ord", d.FieldStr(0, "")}) 'fnORD |
| dt.Rows.Add(New Object() {"SPO", d.FieldStr(0, "")}) 'fnSPOSOLD |
| dt.Rows.Add(New Object() {"TBR", d.FieldStr(0, "")}) 'fnTBR |
| dt.Rows.Add(New Object() {"Minimum", d.FieldStr(0, "Minimum")}) |
| dt.Rows.Add(New Object() {"Reorder", d.FieldStr(0, "Reorder")}) |
| End Select |
| g.ItemsSource = dt |
| End Sub |
| <UserControl x:Class="InvGrid" |
| xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" |
| xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" |
| xmlns:dg="http://schemas.microsoft.com/wpf/2008/toolkit" |
| Height="Auto" Width="Auto" xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation"> |
| <UserControl.Resources> |
| <ResourceDictionary> |
| <Style TargetType="telerik:GridViewRow" x:Key="RowStyle"> |
| <Setter Property="MinHeight" Value="18"/> |
| <Setter Property="FontSize" Value="14"/> |
| <Setter Property="Foreground" Value="Black"/> |
| </Style> |
| <ResourceDictionary.MergedDictionaries> |
| <ResourceDictionary Source="Dictionary1.xaml"/> |
| </ResourceDictionary.MergedDictionaries> |
| </ResourceDictionary> |
| </UserControl.Resources> |
| <Grid x:Name="Container"> |
| <Grid Margin="0,0,0,0" Name="Grid1"> |
| <Grid.ColumnDefinitions> |
| <ColumnDefinition x:Name="Column1" MinWidth="200" /> |
| <ColumnDefinition x:Name="Column2" MinWidth="200" /> |
| <ColumnDefinition x:Name="Column3" MinWidth="200" /> |
| <ColumnDefinition x:Name="Column4" MinWidth="200" /> |
| <ColumnDefinition x:Name="Column5" MinWidth="200" /> |
| </Grid.ColumnDefinitions> |
| <telerik:RadGridView Name="grd1" RowStyle="{StaticResource RowStyle}" Background="White" RowIndicatorVisibility="Collapsed" IsFilteringAllowed="False" Grid.Column="1" Height="198" Width="200" CanUserReorderColumns="False" CanUserResizeColumns="False" CanUserSelect="False" CanUserSortColumns="False" CanUserFreezeColumns="False" CanUserDeleteRows="False" ShowColumnHeaders="False" ShowGroupPanel="False" FontFamily="Microsoft San Serif" FontSize="13" IsTabStop="False" IsHitTestVisible="False" BorderThickness="1" ShowGroupFooters="False" ScrollMode="RealTime" MinHeight="26" BorderBrush="Black" Foreground="Black" ClipToBounds="False" /> |
| <telerik:RadGridView Name="grd2" RowStyle="{StaticResource RowStyle}" Background="White" RowIndicatorVisibility="Collapsed" IsFilteringAllowed="False" Grid.Column="2" Height="158" Width="150" CanUserReorderColumns="False" CanUserResizeColumns="False" CanUserSelect="False" CanUserSortColumns="False" CanUserFreezeColumns="False" CanUserDeleteRows="False" ShowColumnHeaders="False" ShowGroupPanel="False" FontFamily="Microsoft San Serif" FontSize="13" IsTabStop="False" IsHitTestVisible="False" BorderThickness="1" ShowGroupFooters="False" ScrollMode="RealTime" MinHeight="26" BorderBrush="Black" /> |
| <telerik:RadGridView Name="grd3" RowStyle="{StaticResource RowStyle}" Background="White" RowIndicatorVisibility="Collapsed" IsFilteringAllowed="False" Grid.Column="3" Height="198" Width="150" CanUserReorderColumns="False" CanUserResizeColumns="False" CanUserSelect="False" CanUserSortColumns="False" CanUserFreezeColumns="False" CanUserDeleteRows="False" ShowColumnHeaders="False" ShowGroupPanel="False" FontFamily="Microsoft San Serif" FontSize="13" IsTabStop="False" IsHitTestVisible="False" BorderThickness="1" ShowGroupFooters="False" ScrollMode="RealTime" MinHeight="26" /> |
| <telerik:RadGridView Name="grd4" RowStyle="{StaticResource RowStyle}" Background="White" RowIndicatorVisibility="Collapsed" IsFilteringAllowed="False" Grid.Column="4" Height="198" Width="150" CanUserReorderColumns="False" CanUserResizeColumns="False" CanUserSelect="False" CanUserSortColumns="False" CanUserFreezeColumns="False" CanUserDeleteRows="False" ShowColumnHeaders="False" ShowGroupPanel="False" FontFamily="Microsoft San Serif" FontSize="13" IsTabStop="False" IsHitTestVisible="False" BorderThickness="1" ShowGroupFooters="False" ScrollMode="RealTime" MinHeight="26" /> |
| </Grid> |
| </Grid> |
| </UserControl> |
Hi,
I'd like to implement an MDI-like workspace in xbap application, is there any container for multiple RadWindows?
In my xbap application, I'd like the content-region would hold multiple RadWindows which can be dragged around, minimized, maximized, etc.
For dragging, I'd like it so that the windows themselves cannot be dragged outside of the mdi-window content region.
I'd appreciate any help/sample solution on how to implement this.
My xaml code is as follows:I have try to create MDI RadWindows in container1, but failed.
| <telerik:RadDocking Name="radDocking1" Grid.Column="1" Grid.Row="1" AllowUnsafeMode="True"> |
| <telerik:RadDocking.DocumentHost> |
| <telerik:RadSplitContainer InitialPosition="DockedLeft" Name="container1" HorizontalContentAlignment="Left"> |
| <telerik:RadPaneGroup Name="editGroup"> |
| </telerik:RadPaneGroup> |
| </telerik:RadSplitContainer> |
| </telerik:RadDocking.DocumentHost> |
| <telerik:RadSplitContainer telerik:DockingPanel.InitialSize="150,150" InitialPosition="DockedBottom" Height="250"> |
| <telerik:RadPaneGroup Name="listGroup"> |
| <telerik:RadDocumentPane Title="Error Message" Name="errorMSGPane"> |
| <telerik:RadDocumentPane.Content> |
| <TextBlock Name="tberrorMSG" Foreground="Red"> </TextBlock> |
| </telerik:RadDocumentPane.Content> |
| </telerik:RadDocumentPane> |
| </telerik:RadPaneGroup> |
| </telerik:RadSplitContainer> |
| </telerik:RadDocking> |
| public partial class Window1 |
| { |
| public Window1() |
| { |
| InitializeComponent(); |
| this.Foos = new ObservableCollection<Foo>(new[] |
| { |
| new Foo { Name = "1" }, |
| new Foo { Name = "2" }, |
| }); |
| } |
| private void Window_Loaded(object sender, RoutedEventArgs e) |
| { |
| this.DataContext = this; |
| } |
| public ObservableCollection<Foo> Foos{ get; set;} |
| } |
| public class Foo : IDataErrorInfo |
| { |
| public string this[string columnName] |
| { |
| get |
| { |
| return "Error"; |
| } |
| } |
| public string Error |
| { |
| get |
| { |
| return "Error!"; |
| } |
| } |
| public string Name { get; set; } |
| } |
| <Window x:Class="WpfApplication6.Window1" |
| xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" |
| xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" |
| xmlns:telerik="clr-namespace:Telerik.Windows.Controls;assembly=Telerik.Windows.Controls.GridView" |
| Title="Window1" Height="300" Width="300" |
| Loaded="Window_Loaded"> |
| <telerik:RadGridView ItemsSource="{Binding Path=Foos}" |
| AutoGenerateColumns="False"> |
| <telerik:RadGridView.Columns> |
| <telerik:GridViewDataColumn Header="Name 1" |
| DataMemberBinding="{Binding Path=Name, ValidatesOnDataErrors=True}" /> |
| <telerik:GridViewColumn Header="Name 2"> |
| <telerik:GridViewColumn.CellTemplate> |
| <DataTemplate> |
| <TextBox Text="{Binding Path=Name, ValidatesOnDataErrors=True}" /> |
| </DataTemplate> |
| </telerik:GridViewColumn.CellTemplate> |
| </telerik:GridViewColumn> |
| </telerik:RadGridView.Columns> |
| </telerik:RadGridView> |
| </Window> |
