or
MainWindow.xaml----------------------<Window x:Class="HiddenColumns.MainWindow" xmlns:Controls="clr-namespace:Telerik.Windows.Controls;assembly=Telerik.Windows.Controls.GridView" Title="MainWindow" Height="350" Width="525"> <Grid> <Controls:RadGridView x:Name="_mainGrid" SelectionUnit="FullRow" SelectionMode="Single"> </Controls:RadGridView> </Grid></Window>MainWindow.xaml.cs-------------------------using System;using System.Collections.Generic;using System.Data;using System.Linq;using System.Text;using System.Windows;using System.Windows.Controls;using System.Windows.Data;using System.Windows.Documents;using System.Windows.Input;using System.Windows.Media;using System.Windows.Media.Imaging;using System.Windows.Navigation;using System.Windows.Shapes;using Telerik.Windows.Controls;namespace HiddenColumns{ /// <summary> /// Interaction logic for MainWindow.xaml /// </summary> public partial class MainWindow : Window { private DataTable _dataTable; private GridViewDataColumn _colA; private GridViewDataColumn _colB; private GridViewDataColumn _colC; public MainWindow() { InitializeComponent(); Init(); } private void Init() { CreateGrid(); GetDataTable(); FillGrid(); } private void FillGrid() { DataRow row = _dataTable.NewRow(); row["_colA"] = "1"; row["_colB"] = "This is a Dummy Record"; row["_colC"] = "This is Third Column"; _dataTable.Rows.Add(row); _mainGrid.ItemsSource = _dataTable; } private void CreateGrid() { _mainGrid.AutoGenerateColumns = false; if (_colA == null) { _colA = new GridViewDataColumn(); } // // _ColA // _colA.UniqueName = "_colA"; _colA.Header = "Column A"; _colA.IsGroupable = false; _colA.IsFilterable = false; _colA.IsReadOnly = true; _colA.IsVisible = true; _colA.Width = 100; if (_colB == null) { _colB = new GridViewDataColumn(); } // // _colB // _colB.UniqueName = "_colB"; _colB.Header = "Column B"; _colB.IsGroupable = false; _colB.IsFilterable = false; _colB.IsReadOnly = true; _colB.IsVisible = false; // // _colC // if (_colC == null) { _colC = new GridViewDataColumn(); } _colC.UniqueName = "_colC"; _colC.Header = "Column C"; _colC.IsGroupable = false; _colC.IsFilterable = false; _colC.IsResizable = false; _colC.Width = 150; _mainGrid.Columns.Clear(); _mainGrid.Columns.Add(_colA); _mainGrid.Columns.Add(_colB); _mainGrid.Columns.Add(_colC); //_mainGrid.Width = 480; _mainGrid.ShowGroupPanel = false; } private void GetDataTable() { if (_dataTable == null) { _dataTable = new DataTable(); } _dataTable.Columns.Add("_colA"); _dataTable.Columns.Add("_colB"); _dataTable.Columns.Add("_colC"); } }}

Hi,
we are using GridView.ToHtml method for Export grid's records.
Depending on records count, we get a System.OutOfMemoryException in this method. (>10000 records throw exception)
We are using 'RadControls for WPF Q2 2009' version.
Are there anyway to improve performance or to avoid this exception?
Best regards!
public static readonly DependencyProperty VisibilityProperty = DependencyProperty.Register("Visibility", typeof(bool), typeof(HideRadGridViewColumnBehavior), new PropertyMetadata(OnVisibilityPropertyChanged));private static void OnVisibilityPropertyChanged(DependencyObject target, DependencyPropertyChangedEventArgs args){ if (((HideRadGridViewColumnBehavior)target).AssociatedObject == null) { MessageBox.Show("AssociatedObject is null"); } else { var col = ((HideRadGridViewColumnBehavior)target).AssociatedObject as GridViewDataColumn; col.Width = 0; col.Header = ""; col.IsResizable = false; }}AssociatedObject is null, Here is the XAML I am using - hopefully someone can point me in the right direction on this. <telerik:GridViewDataColumn DataMemberBinding="{Binding ModelId}" Header="ID"> <i:Interaction.Behaviors> <b:HideRadGridViewColumnBehavior Visibility="{Binding Path=DevMode}"/> </i:Interaction.Behaviors></telerik:GridViewDataColumn>tvDirectory.Items.Add("Select/Deselect All");RadTreeViewItem item = (RadTreeViewItem)((RadTreeView)sender).SelectedContainer;if (item != null){ if (item.CheckState == ToggleState.On) { foreach (RadTreeViewItem tvItem in tvDirectory.Items) { tvItem.CheckState = ToggleState.On; } } else { foreach (RadTreeViewItem tvItem in tvDirectory.Items) { tvItem.CheckState = ToggleState.Off; } }}