在RadGridView中进行分组以及导出

分组

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

前台代码:

<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"

后台代码:

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的控件来导出,其后台的事件如下:

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)
                 {
 
                    
                 }
                
             }
         }

silverlight RadGridView总结三(转载)的更多相关文章

  1. ArcGIS网络分析之Silverlight客户端路径分析(三)

    原文:ArcGIS网络分析之Silverlight客户端路径分析(三) 首先贴上最终的效果图: a.路径查询 2.最近设施点查询 3.服务区分析 说明: 1.以上的示例使用的数据是随意在ArcMap中 ...

  2. silverlight RadGridView总结二(转载)

    系列二    实现RadGridView行中添加不同控件,并在控件中绑定不同的数据源    先上一段前台代码 <telerik:RadGridView Grid.Row="2" ...

  3. silverlight RadGridView总结系列(转载)

    系列一. RadGridView常用属性总结    1.不可编辑----IsReadOnly="True".    2.不自动增加行----AutoGenerateColumns= ...

  4. Silverlight RadGridView的HeaderCellStyle样式

    效果图 <UserControl x:Class="SilverlightApplication7.MainPage" xmlns="http://schemas. ...

  5. Silverlight学习(三)

    最近对WCFRIA+MVVM+Prism有了初步的认识,能够简单的实现一些数据库的交互.这节主要讲的是Silverlight通过domainservice和ado.net实体数据模型与数据库的交互.本 ...

  6. Digester学习笔记(三)转载

    总觉得,Digester不仅仅能作配置文件解析,而且可以作得更多. 配置属性 Digester用来解析应用系统的配置文件,其本身也有很可配置的属性. 属性 描述 classLoader 指定类装载器( ...

  7. silverlight RadGridView 动态添加数据列

    public void BindFaultGridInfo(IList<HealthStatusApp.Web.Models.FaultMajorModel> list) { rg_Fau ...

  8. silverlight数据绑定模式TwoWay,OneWay,OneTime的研究

    asp.net开发中,数据绑定是一个很简单的概念,控件与数据绑定后,控件可以自动把数据按一定的形式显示出来.(当然控件上的值改变后,可以通过提交页面表单,同时后台服务端代码接收新值更新数据) silv ...

  9. jQuery中的常用内容总结(三)

    jQuery中的常用内容总结(三) 转载请注明地址:http://www.cnblogs.com/funnyzpc/p/7571998.html 内容提要 选择器(第一节) 选择器的扩展方法(第一节) ...

随机推荐

  1. POJ1325Machine Schedule(匈牙利算法)

                                                          Machine Schedule Time Limit: 1000MS   Memory L ...

  2. vijos P1190繁忙的都市(Kruskal)(最小生成树)

    P1190  繁忙的都市 城市C是一个非常繁忙的大都市,城市 中的道路十分的拥挤,于是市长决定对其中的道路进行改造.城市C的道路是这样分布的:城市中有n个交叉路口,有些交叉路口之间有道路相连,两个交叉 ...

  3. 细菌(disease) (位运算)(状态压缩)

    细菌(disease) 时间限制: 1 Sec  内存限制: 64 MB提交: 9  解决: 5[提交][状态][讨论版] 题目描述 近期,农场出现了D(1≤D≤15)种细菌.John要从他的N(1≤ ...

  4. 软Raid5,LVM,3T大硬盘纠缠操作的问题

    新服务器,4块3T大硬盘,软Raid5 组建 加上LVM分区各种一通操作... 悲催的是经过4天的软raid rebuild,最终状态给我FAIL了,当看到raid的state[ State : cl ...

  5. IntelliJ IDEA Mac破解教程

    1.将下面的文件下载并放置到: 下载地址: http://idea.lanyus.com/jar/JetbrainsCrack-2.6.10-release-enc.jar 放到: /Applicat ...

  6. 扩展gridview轻松实现冻结行和列

    在实际的项目中,由于项目的需要,数据量比较大,同时显示栏位也比较多,要做gridview里显示完整,并做到用户体验比较好,这就需要冻结表头和关键列.由于用到的地方比较多,我们可以护展一个gridvie ...

  7. Coherence的集群成员的离开和加入机制研究

    最近在客户那里环境中coherence集群不稳定,所以找出一些文档,需要搞清楚Coherence内部的一些机制 1.集群成员的离开 关于状态的检测,官方的说法是: Death detection is ...

  8. 打补丁以及WebLogic Server的版本

    12.1.2开始采用了Oracle传统的opatch打补丁的方式,但在此之前,包括 10.3.x版本以及12.1.1版本还是通过bea的smart update方式来进行. smart update基 ...

  9. 一起來玩鳥 Starling Framework(2)效能測試以及Image與Texture

    上一篇我們放了一個Quad與TextField在舞台上慢慢轉.眼尖的可能會發現轉起來邊緣有點鋸齒,這可以透過設定Starling的反鋸齒來解決,在Main.as裡,新增了_starling之後,可以加 ...

  10. 五子棋js

    http://www.jb51.net/article/35993.htm <!DOCTYPE html> <html> <head> <meta http- ...