or
private void radDocking_ElementLoading( object sender, Telerik.Windows.Controls.LayoutSerializationLoadingEventArgs e ){ var pane = e.AffectedElement as RadPane; if ( pane != null ) { pane.Content = this.GetPaneContent( e.AffectedElementSerializationTag ); }}RadPaneGroup radPaneGroup = new RadPaneGroup { VerticalAlignment = VerticalAlignment.Top, VerticalContentAlignment = VerticalAlignment.Top }; this.view.splitContainer.Items.Add(radPaneGroup); RadPane radPane = new RadPane { Content = createdChartView, CanUserClose = true, Title = createdChartView.DisplayName, }; RadDocking.SetSerializationTag(radPane, chartConfiguration.Id.ToString()); RadDocking.SetSerializationTag(radPaneGroup, chartConfiguration.Id.ToString()); radPaneGroup.Items.Add(radPane); this.hostedCharts.Add(chartConfiguration.Id, createdChartView);private void RadDockingOnElementLoaded(object sender, LayoutSerializationEventArgs e) { RadPane newPane = e.AffectedElement as RadPane; if (newPane != null) { ChartView chartView = ((ChartHostViewModel)this.DataContext).GetPaneContent(e.AffectedElementSerializationTag); RadPane oldParentPane = (RadPane)chartView.Parent; if (oldParentPane != null) { RadPaneGroup oldParentGroup = (RadPaneGroup)oldParentPane.Parent; if (oldParentGroup != null) { RadSplitContainer oldSplitContainer = (RadSplitContainer)oldParentGroup.Parent; if (oldSplitContainer != null) { oldSplitContainer.Items.Remove(oldParentGroup); } oldParentGroup.Items.Remove(oldParentPane); } oldParentPane.Content = null; } newPane.Content = chartView; return; } RadPaneGroup newPaneGroup = e.AffectedElement as RadPaneGroup; if (newPaneGroup != null) { newPaneGroup.VerticalAlignment = VerticalAlignment.Top; newPaneGroup.VerticalContentAlignment = VerticalAlignment.Top; } }
FrameworkElementFactory factory = new FrameworkElementFactory(typeof(CheckBox));factory.AddHandler(CheckBox.CheckedEvent, new RoutedEventHandler(GridViewAll_HeaderCheckBox_Checked));factory.AddHandler(CheckBox.UncheckedEvent, new RoutedEventHandler(GridViewAll_HeaderCheckBox_Checked));factory.SetValue(CheckBox.ToolTipProperty, "(De)Select All");DataTemplate template = new DataTemplate();template.DataType = typeof(bool);template.VisualTree = factory;
GridViewCheckBoxColumn column = new GridViewCheckBoxColumn();column.DataMemberBinding = new Binding(prefix + property.Name);column.Header = template // <-- this does not work
var customerids = from c in customersQueryView select c.customerid;var customerids = from c in customersQueryView.AsQueryable() select c.customerid;class CustomGridViewToggleRowDetailsColumn : GridViewBoundColumnBase { public static RoutedEvent ClickEvent = EventManager.RegisterRoutedEvent( "Click", RoutingStrategy.Bubble, typeof( ToggleRowDetailsColumnRoutedEventHandler ), typeof( CustomGridViewToggleRowDetailsColumn ) ); public GridViewCell Cell { get; set; } public event RoutedEventHandler Click { add { AddHandler( ClickEvent, value ); } remove { RemoveHandler( ClickEvent, value ); } } public override object Header { get { return null; } set { base.Header = value; } } public GridViewToggleButton ToggleButton { get; set; } private Binding toggleButtonVisibility; public Binding ToggleButtonVisibility { get { return toggleButtonVisibility; } set { toggleButtonVisibility = value; } } public CustomGridViewToggleRowDetailsColumn() { this.EditTriggers = GridViewEditTriggers.None; } public override bool CanFilter() { return false; } public override bool CanGroup() { return false; } public override bool CanSort() { return false; } public override FrameworkElement CreateCellElement( GridViewCell cell, object dataItem ) { Cell = cell; ToggleButton = new GridViewToggleButton { Margin = new System.Windows.Thickness( 3 ) }; ToggleButton.Click += new RoutedEventHandler( ToggleButton_Click ); if ( this.DataMemberBinding != null ) { ToggleButton.SetBinding( GridViewToggleButton.IsCheckedProperty, this.DataMemberBinding ); } if ( ToggleButtonVisibility != null ) { ToggleButton.SetBinding( GridViewToggleButton.VisibilityProperty, ToggleButtonVisibility ); } GridViewRow row = cell.ParentRow as GridViewRow; row.SetBinding( GridViewRow.DetailsVisibilityProperty, new Binding( "IsChecked" ) { Source = ToggleButton, Converter = new BooleanToVisibilityConverter(), Mode = BindingMode.TwoWay } ); return ToggleButton; } void ToggleButton_Click( object sender, RoutedEventArgs e ) { // Raise our Click event RoutedEventArgs newEventArgs = new ToggleRowDetailsColumnRoutedEventArgs( ClickEvent, Cell ); RaiseEvent( newEventArgs ); } } public class ToggleRowDetailsColumnRoutedEventArgs : RoutedEventArgs { public GridViewCell Cell { get; set; } public GridViewRow Row { get { return Cell.ParentRow as GridViewRow; } } public ToggleRowDetailsColumnRoutedEventArgs( RoutedEvent routedEvent, GridViewCell cell ) : base( routedEvent ) { Cell = cell; } } public delegate void ToggleRowDetailsColumnRoutedEventHandler( object sender, ToggleRowDetailsColumnRoutedEventArgs e );private void ExpandAlarms_Click( object sender, ToggleRowDetailsColumnRoutedEventArgs e ) { ReadViewModel read = e.Row.Item as ReadViewModel; if ( read.Alarms == null ) { read.Alarms = DataInterface.GetAlarmsForRead( read.ID ); } e.Handled = true; }
<telerik:GridViewMaskedTextBoxColumn Mask="P1" MaskType="Numeric" DataMemberBinding="{Binding CurrentAllocationWeight}" DisplayIndex="1" IsReadOnly="True" DataFormatString="{}{0:P1}" Header="% Of Total" ColumnGroupName="CurrentAllocation"/>