zoukankan      html  css  js  c++  java
  • silverlight RadGridView总结三(转载)

    在RadGridView中进行分组以及导出

    分组

    主要是在前台进行分组的定义:

    前台代码:

    View Code
     <telerik:RadGridView x:Name="RadGridView1" ItemsSource="{Binding Customers}" CanUserFreezeColumns="False" AutoExpandGroups="True" AutoGenerateColumns="False">
                 <telerik:RadGridView.GroupDescriptors>
                     <telerik:GroupDescriptor Member="Country">
                         <telerik:GroupDescriptor.AggregateFunctions>
                             <telerik:CountFunction Caption="Total customers:" />
                         </telerik:GroupDescriptor.AggregateFunctions>
                     </telerik:GroupDescriptor>
                 </telerik:RadGridView.GroupDescriptors>
                 <telerik:RadGridView.Columns>
                     <telerik:GridViewDataColumn Header="CustomerID" DataMemberBinding="{Binding CustomerID}" />
                     <telerik:GridViewDataColumn Header="CompanyName" DataMemberBinding="{Binding CompanyName}" />
                     <telerik:GridViewDataColumn Header="ContactName" DataMemberBinding="{Binding ContactName}" />
                     <telerik:GridViewDataColumn Header="ContactTitle" DataMemberBinding="{Binding ContactTitle}" />
                     <telerik:GridViewDataColumn Header="Country" DataMemberBinding="{Binding Country}" />
                     <telerik:GridViewDataColumn Header="City" DataMemberBinding="{Binding City}" />
                 </telerik:RadGridView.Columns>
             </telerik:RadGridView>

    导出---RadGridView控件自带导出功能(以导出EXCEL为例)

    需在前台定义事件---然后在后台定义导出功能。(需要注意的是,将控件设置为隐藏的话导出是不成功的

    定义的事件ElementExporting="控件名称_ElementExporting"

    后台代码:

    View Code
      private void 空间名称_ElementExporting(object sender, GridViewElementExportingEventArgs e)
             {
                 if (e.Element == ExportElement.HeaderRow || e.Element == ExportElement.HeaderCell)
                 {
                     e.Background = Colors.LightGray;
                     e.FontSize = 20;
                     e.FontWeight = FontWeights.Bold;
                     e.Height = 50;
                     e.Width = 100;
                 }
             }


    当然,你的UI中肯定有一个导出的Button的控件来导出,其后台的事件如下:

    View Code
     private void Button控件名称_Click(object sender, RoutedEventArgs e)
             {
                 string extensioin = "xls";
                 ExportFormat format = ExportFormat.Html;
                 SaveFileDialog dialog = new SaveFileDialog();
                 dialog.DefaultExt = extensioin;
                 dialog.Filter = String.Format("{1} files (*.{0})|*.{0}|All files (*.*)|*.*", extensioin, "Excel");
     
                 dialog.FilterIndex = 1;
     
                 if (dialog.ShowDialog() == true)
                 {
                     try
                     {
                         using (Stream str = dialog.OpenFile())
                         {
                             GridViewExportOptions exportextension = new GridViewExportOptions();
                             exportextension.Format = format;
                             exportextension.Encoding = System.Text.Encoding.GetEncoding("utf-8");//放置乱码的出现
                             exportextension.ShowColumnFooters = true;
                             exportextension.ShowColumnHeaders = true;
                             exportextension.ShowGroupFooters = true;
                             this.SCityGridView.SalesRadGridView.Export(str, exportextension);
                         }
                     }
                     catch (Exception)
                     {
     
                        
                     }
                    
                 }
             }

  • 相关阅读:
    Callable的Future模式
    并发队列
    并发工具类和线程池
    安全与死锁问题
    ConcurrentHashMap底层实现
    Map集合常见面试题
    List集合框架
    类加载器
    Activiti中个人任务分配
    流程定义
  • 原文地址:https://www.cnblogs.com/sandea/p/3289875.html
Copyright © 2011-2022 走看看