Click here to Skip to main content
15,896,207 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
I am using Silverlight telerik:RadGridView with MVVM binding. In it I have used GridViewComboBoxColumn which is not exporting selected value during export to excel.

Code is as below.
C#
       <telerik:RadGridView x:Name="gvFollowUp" IsReadOnly="False" GridLinesVisibility="Both" CanUserReorderColumns="True" 
                             CanUserFreezeColumns="False" AutoGenerateColumns="False"  AutoExpandGroups="True"  IsFilteringAllowed="True" ItemsSource="{Binding FollowUpList}"
                             RowIndicatorVisibility="Collapsed" VerticalAlignment="Top" Margin="0,0,0,0" ShowColumnFooters="False" HorizontalAlignment="Stretch" 
                             ScrollViewer.VerticalScrollBarVisibility="Auto" ScrollViewer.HorizontalScrollBarVisibility="Auto" Height="Auto" Grid.Row="1"
                             NewRowPosition="Top" CellValidating="gvFollowUp_CellValidating" ValidatesOnDataErrors="InEditMode" CanUserInsertRows="True" 
                             EditTriggers="Default">            
            <i:Interaction.Triggers>
                <i:EventTrigger EventName="BeginningEdit">
                    <cmd:EventToCommand Command="{Binding BegningEdit}" PassEventArgsToCommand="True"/>
                </i:EventTrigger>
                <i:EventTrigger EventName="RowEditEnded">
                    <cmd:EventToCommand Command="{Binding RowEditEnd}" PassEventArgsToCommand="True"/>
                </i:EventTrigger>
                <i:EventTrigger EventName="AddingNewDataItem">
                    <cmd:EventToCommand Command="{Binding AddingNewDataItem}" PassEventArgsToCommand="True"/>
                </i:EventTrigger>
            </i:Interaction.Triggers>            
            <telerik:RadGridView.Columns>

<telerik:GridViewDataColumn Header="File #" x:Name="gvcFileNo" IsReadOnlyBinding="{Binding flg_completed, Converter={StaticResource BoolConverter},ConverterParameter=gvcFileNo}" 
                                            UniqueName="FileNo">
                    <telerik:GridViewDataColumn.CellTemplate>
                        <DataTemplate>
                            <HyperlinkButton NavigateUri="{Binding thisFollowUp.URUrl}" Content="{Binding LookUpReferenceCode.c2, Mode=OneTime}" ></HyperlinkButton>
                        </DataTemplate>
                    </telerik:GridViewDataColumn.CellTemplate>
                    <telerik:GridViewDataColumn.CellEditTemplate>
                        <DataTemplate>
                            <telerik:RadAutoCompleteBox x:Name="rcmbReference"
                                                DisplayMemberPath="c2"                                                                                                               
                                                SelectionMode="Single"
                                                SelectedItem="{Binding LookUpReferenceCode, Mode= TwoWay}"
											    ItemsSource="{Binding RelativeSource={RelativeSource AncestorType=UserControl}, Path=DataContext.ReferenceNo}"	
                                                BorderThickness="1"                                                                                                 
                                                HorizontalAlignment="Left"
                                                AutoCompleteMode="SuggestAppend"/>
                        </DataTemplate>
                    </telerik:GridViewDataColumn.CellEditTemplate>
                </telerik:GridViewDataColumn>
<telerik:GridViewComboBoxColumn x:Name="rcmbStatus"
                                                Header="Status"                                                                                  
                                                DataMemberBinding="{Binding LookUpSuspenseStatus, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}" 
                                                DisplayMemberPath="c2"  
                                                FilterMemberPath="LookUpSuspenseStatus.c2"                                                
                                                ItemsSourceBinding="{Binding RelativeSource={RelativeSource AncestorType=UserControl}, Path=DataContext.StatusLookUp}"
                                                IsReadOnlyBinding="{Binding flg_completed, Converter={StaticResource BoolConverter},ConverterParameter=Status}" 
                                                IsVisible="False">
                </telerik:GridViewComboBoxColumn>
</telerik:RadGridView.Columns>
        </telerik:RadGridView>






 public RelayCommand ExportCommand
        {
            get
            {
                return _ExportCommand
                    ?? (_ExportCommand = new RelayCommand(
                                          () =>
                                          {
                                              RadGridView grid = (Helper.Content.Content as Alis.Accounting.Controls.UCFollowUp).gvFollowUp;
                                              if (grid != null)
                                              {
                                                  grid.ElementExporting -= CurrentGrid_ElementExporting;
                                                  grid.ElementExporting += CurrentGrid_ElementExporting;

                                                  string extension = "xls";
                                                  var format = ExportFormat.Html;

                                                  var dialog = new SaveFileDialog();
                                                  dialog.DefaultExt = extension;
                                                  dialog.Filter = String.Format("{1} files (*.{0})|*.{0}|All files (*.*)|*.*", extension, "Excel");
                                                  dialog.FilterIndex = 1;
                                                  //dialog.DefaultFileName = "Follow Up-" + DateTime.Now.Date.ToShortDateString();

                                                  if (dialog.ShowDialog() == true)
                                                  {                                                     
                                                      using (var stream = dialog.OpenFile())
                                                      {
                                                          var exportOptions = new GridViewExportOptions();
                                                          exportOptions.Format = format;
                                                          exportOptions.ShowColumnFooters = true;
                                                          exportOptions.ShowColumnHeaders = true;
                                                          exportOptions.ShowGroupFooters = true;
                                                          
                                                          grid.Export(stream, exportOptions);
                                                      }
                                                  }
                                              }
                                          }));
            }
        }
Posted
Updated 7-May-14 21:21pm
v2

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900