asp.net 中使用Infragistics NetAdvantage 2005 Volume 3 CLR 2.0(UltraWebGrid)层级GridView

在使用UltraWebGrid 很麻烦,很多人说这年控件很强大,但我觉的一点都不好用,前几天用到了Grid的层级关系的时候,

使用到了它,Infragistics 的层级的中文资料少之又少,好像没有哦,

 

页面代码:

 

  1. <%@ Page Language="C#" AutoEventWireup="true" Codebehind="Rpt_CaseInfoByDeptLevel.aspx.cs"
  2.     Inherits="SZUM.ZHZF.Web.IntergratedCasePlatform.Pages.Report.Rpt_CaseInfoByDeptLevel" %>
  3. <%@ Register Assembly="Infragistics2.WebUI.UltraWebGrid.v5.3, Version=5.3.20053.73, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb"
  4.     Namespace="Infragistics.WebUI.UltraWebGrid" TagPrefix="igtbl" %>
  5. <%@ Register TagPrefix="igtblex" Namespace="Infragistics.WebUI.UltraWebGrid.ExcelExport"
  6.     Assembly="Infragistics2.WebUI.UltraWebGrid.ExcelExport.v5.3" %>
  7. <!--  ie QuirksMode  -->
  8. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  9. <html xmlns="http://www.w3.org/1999/xhtml">
  10. <head id="Head1" runat="server">
  11.     <title>Untitled Page</title>
  12. </head>
  13. <script language="JavaScript">
  14.     window.onerror=function(){return true;}
  15. </script>
  16. <body>
  17.     <form id="form1" runat="server">
  18.         <div class="box_layer_5">
  19.             <div class="relative">
  20.                 <h1 class="b_title">
  21.                     <code>部门统计报表</code></h1>
  22.                 <div class="box_content">
  23.                     <div class="search_box padding_bottom_10px">
  24.                         <table cellpadding="0" cellspacing="8" border="0">
  25.                             <tr>
  26.                                 <th style="width: 60px">
  27.                                     区 域:
  28.                                 </th>
  29.                                 <td>
  30.                                     <div class="selectbox_width_120px">
  31.                                         <asp:DropDownList ID="ddlRegion" runat="server">
  32.                                         </asp:DropDownList>
  33.                                     </div>
  34.                                 </td>
  35.                                 <th style="width: 60px">
  36.                                     受理时间:</th>
  37.                                 <td>
  38.                                     <asp:TextBox ID="txtStart" runat="server" onclick="WdatePicker()" CssClass="Wdate"
  39.                                         Width="110px"></asp:TextBox>
  40.                                 </td>
  41.                                 <td>
  42.                                     至<asp:TextBox ID="txtEnd" runat="server" onclick="WdatePicker()" CssClass="Wdate"
  43.                                         Width="110px"></asp:TextBox></td>
  44.                                 <td id="btn_style_control">
  45.                                     <asp:Button ID="BtnCreate" runat="server" OnClick="BtnCreate_Click" CssClass="btnStyle"
  46.                                         Text="查 询" />
  47.                                     <asp:Button ID="BtnToExcel" runat="server" OnClick="BtnToExcel_Click" CssClass="btnStyle"
  48.                                         Text="导出Excel" />
  49.                                     <asp:Button ID="btnToOfficeExcel" runat="server" CssClass="btnStyle" Text="导出OfficeExcel"
  50.                                         OnClick="btnToOfficeExcel_Click" Visible="False" />
  51.                                 </td>
  52.                             </tr>
  53.                         </table>
  54.                     </div>
  55.                     <div class="grid_list_content_top_59px">
  56.                         <igtbl:UltraWebGrid ID="UltraWebGrid1" runat="server" Width="100%" Browser="UpLevel">
  57.                             <DisplayLayout RowHeightDefault="18px" Version="3.00" SelectTypeRowDefault="Single"
  58.                                 ViewType="Hierarchical" BorderCollapseDefault="Separate" LoadOnDemand="Manual"
  59.                                 Name="UltraWebGrid1" AutoGenerateColumns="False" ColWidthDefault="152px">
  60.                                 <RowSelectorStyleDefault Width="10px" VerticalAlign="Middle" Font-Size="8pt" Font-Names="Verdana"
  61.                                     HorizontalAlign="Center" BackColor="Gray">
  62.                                 </RowSelectorStyleDefault>
  63.                                 <ActivationObject BorderColor="168, 167, 191">
  64.                                 </ActivationObject>
  65.                                 <RowExpAreaStyleDefault Font-Size="8pt" Font-Names="Verdana" BackColor="White">
  66.                                 </RowExpAreaStyleDefault>
  67.                                 <EditCellStyleDefault BorderWidth="0px" BorderStyle="None">
  68.                                 </EditCellStyleDefault>
  69.                                 <RowAlternateStyleDefault BackColor="#F1F1F1">
  70.                                 </RowAlternateStyleDefault>
  71.                                 <RowStyleDefault BorderWidth="0px" Font-Size="8pt" Font-Names="Verdana" BorderColor="DarkGray"
  72.                                     BorderStyle="Solid" ForeColor="Black" BackColor="Gainsboro">
  73.                                     <Padding Left="7px" Right="7px"></Padding>
  74.                                     <BorderDetails ColorTop="White" WidthLeft="0px" WidthTop="0px" ColorLeft="Gray"></BorderDetails>
  75.                                 </RowStyleDefault>
  76.                             </DisplayLayout>
  77.                             <Bands>
  78.                                 <igtbl:UltraGridBand>
  79.                                     <Columns>
  80.                                         <igtbl:UltraGridColumn BaseColumnName="region_id" HeaderText="部门" IsBound="True"
  81.                                             Hidden="True" Key="region_id">
  82.                                             <Header Caption="部门">
  83.                                             </Header>
  84.                                         </igtbl:UltraGridColumn>
  85.                                         <igtbl:UltraGridColumn BaseColumnName="dept_name" HeaderText="部门" IsBound="True"
  86.                                             Key="dept_name">
  87.                                             <Header Caption="部门">
  88.                                                 <RowLayoutColumnInfo OriginX="1" />
  89.                                             </Header>
  90.                                             <Footer>
  91.                                                 <RowLayoutColumnInfo OriginX="1" />
  92.                                             </Footer>
  93.                                         </igtbl:UltraGridColumn>
  94.                                         <igtbl:UltraGridColumn BaseColumnName="acceptcount" HeaderText="受理数" IsBound="True"
  95.                                             Key="acceptcount">
  96.                                             <Header Caption="受理数">
  97.                                                 <RowLayoutColumnInfo OriginX="2" />
  98.                                             </Header>
  99.                                             <Footer>
  100.                                                 <RowLayoutColumnInfo OriginX="2" />
  101.                                             </Footer>
  102.                                         </igtbl:UltraGridColumn>
  103.                                         <igtbl:UltraGridColumn BaseColumnName="basiccount" HeaderText="立案数" IsBound="True"
  104.                                             Key="basiccount">
  105.                                             <Header Caption="立案数">
  106.                                                 <RowLayoutColumnInfo OriginX="3" />
  107.                                             </Header>
  108.                                             <Footer>
  109.                                                 <RowLayoutColumnInfo OriginX="3" />
  110.                                             </Footer>
  111.                                         </igtbl:UltraGridColumn>
  112.                                         <igtbl:UltraGridColumn BaseColumnName="endcount" HeaderText="结案数" IsBound="True"
  113.                                             Key="endcount">
  114.                                             <Header Caption="结案数">
  115.                                                 <RowLayoutColumnInfo OriginX="4" />
  116.                                             </Header>
  117.                                             <Footer>
  118.                                                 <RowLayoutColumnInfo OriginX="4" />
  119.                                             </Footer>
  120.                                         </igtbl:UltraGridColumn>
  121.                                         <igtbl:UltraGridColumn BaseColumnName="nocreatecount" HeaderText="不予立案数" IsBound="True"
  122.                                             Key="nocreatecount">
  123.                                             <Header Caption="不予立案数">
  124.                                                 <RowLayoutColumnInfo OriginX="5" />
  125.                                             </Header>
  126.                                             <Footer>
  127.                                                 <RowLayoutColumnInfo OriginX="5" />
  128.                                             </Footer>
  129.                                         </igtbl:UltraGridColumn>
  130.                                         <igtbl:UltraGridColumn BaseColumnName="movecount" HeaderText="移交数" IsBound="True"
  131.                                             Key="movecount">
  132.                                             <Header Caption="移交数">
  133.                                                 <RowLayoutColumnInfo OriginX="6" />
  134.                                             </Header>
  135.                                             <Footer>
  136.                                                 <RowLayoutColumnInfo OriginX="6" />
  137.                                             </Footer>
  138.                                         </igtbl:UltraGridColumn>
  139.                                         <igtbl:UltraGridColumn BaseColumnName="stopcount" HeaderText="撤销中止数" IsBound="True"
  140.                                             Key="stopcount">
  141.                                             <Header Caption="撤销中止数">
  142.                                                 <RowLayoutColumnInfo OriginX="7" />
  143.                                             </Header>
  144.                                             <Footer>
  145.                                                 <RowLayoutColumnInfo OriginX="7" />
  146.                                             </Footer>
  147.                                         </igtbl:UltraGridColumn>
  148.                                     </Columns>
  149.                                     <AddNewRow View="NotSet" Visible="NotSet">
  150.                                     </AddNewRow>
  151.                                 </igtbl:UltraGridBand>
  152.                             </Bands>
  153.                         </igtbl:UltraWebGrid>
  154.                         <igtblex:UltraWebGridExcelExporter ID="UltraWebGridExcelExporter1" runat="server"
  155.                             ExcelStartRow="3">
  156.                         </igtblex:UltraWebGridExcelExporter>
  157.                     </div>
  158.                 </div>
  159.             </div>
  160.         </div>
  161.     </form>
  162. </body>
  163. </html>

 

 

后台代码

 

  1. using System;
  2. using System.Data;
  3. using System.Configuration;
  4. using System.Collections;
  5. using System.Web;
  6. using System.Web.Security;
  7. using System.Web.UI;
  8. using System.Web.UI.WebControls;
  9. using System.Web.UI.WebControls.WebParts;
  10. using System.Web.UI.HtmlControls;
  11. using Infragistics.WebUI.UltraWebGrid;
  12. using Infragistics.WebUI.UltraWebGrid.ExcelExport;
  13. using SZUM.ZHZF.Logic.CommonBaseClass;
  14. using SZUM.ZHZF.Entity.IntergratedCasePlatform;
  15. using SZUM.ZHZF.Logic.IntergratedCasePlatform;
  16. using System.Collections.Generic;
  17. using SZUM.ZHZF.Framework.Utility;
  18. namespace SZUM.ZHZF.Web.IntergratedCasePlatform.Pages.Report
  19. {
  20.     public partial class Rpt_CaseInfoByDeptLevel : BaseCommonCaseHandlerPage
  21.     {
  22.         protected void Page_Load(object sender, EventArgs e)
  23.         {
  24.             if (!IsPostBack)
  25.             {
  26.                 BindRegion();
  27.             }
  28.         }
  29.         #region Web Form Designer generated code
  30.         override protected void OnInit(EventArgs e)
  31.         {
  32.             //
  33.             // CODEGEN: This call is required by the ASP.NET Web Form Designer.
  34.             //
  35.             InitializeComponent();
  36.             base.OnInit(e);
  37.         }
  38.         /// <summary>
  39.         /// Required method for Designer support - do not modify
  40.         /// the contents of this method with the code editor.
  41.         /// </summary>
  42.         private void InitializeComponent()
  43.         {
  44.             this.UltraWebGrid1.DemandLoad += new Infragistics.WebUI.UltraWebGrid.DemandLoadEventHandler(this.UltraWebGrid1_DemandLoad);
  45.             this.UltraWebGrid1.InitializeLayout += new Infragistics.WebUI.UltraWebGrid.InitializeLayoutEventHandler(this.UltraWebGrid1_InitializeLayout);
  46.         }
  47.         #endregion
  48.         private RegionInfoEntity _regionEntity;
  49.         public RegionInfoEntity RegionEntity
  50.         {
  51.             get
  52.             {
  53.                 if (_regionEntity == null)
  54.                 {
  55.                     _regionEntity = RegionInfoLogic.GetRegionIdByDeptId(PMIExtentionManager.LogonUser.User.DefaultDepartmentID);
  56.                 }
  57.                 return _regionEntity;
  58.             }
  59.         }
  60.         private string _deptSQL = "";
  61.         private string DeptSQL
  62.         {
  63.             get
  64.             {
  65.                 if (_deptSQL == "")
  66.                 {
  67.                     _deptSQL = PMIExtentionManager.GetDepartmentCollectSql(PMIExtentionManager.LogonUser.User.DefaultDepartmentID);
  68.                 }
  69.                 return _deptSQL;
  70.             }
  71.         }
  72.         private void BindRegion()
  73.         {
  74.             ddlRegion.Items.Clear();
  75.             bool IsShi = false;//是否为市级
  76.             
  77.             RegionInfoEntity rootRegion = RegionInfoLogic.GetRegionColByParentId(Guid.Empty)[0];
  78.             if (RegionEntity.RegionId == rootRegion.RegionId)
  79.             {
  80.                 ddlRegion.Items.Add(new ListItem(rootRegion.RegionName, rootRegion.RegionId.ToString()));
  81.                 IsShi = true;
  82.             }
  83.             RegionInfoCollection districtCol = RegionInfoLogic.GetRegionColByParentId(rootRegion.RegionId);
  84.             foreach (RegionInfoEntity i in districtCol)
  85.             {
  86.                 if (RegionEntity.RegionId == i.RegionId || RegionEntity.ParentId == i.RegionId || IsShi)
  87.                 {
  88.                     ddlRegion.Items.Add(new ListItem(" " + i.RegionName, i.RegionId.ToString()));
  89.                 }
  90.             }
  91.         }
  92.         protected void BtnCreate_Click(object sender, EventArgs e)
  93.         {
  94.             BindView();
  95.         }
  96.         private DataTable _GridSource = null;
  97.         public DataTable GridSource
  98.         {
  99.             get
  100.             {
  101.                 if (_GridSource == null)
  102.                 {
  103.                     Guid regionid = Guid.Empty;
  104.                     if (!string.IsNullOrEmpty(this.ddlRegion.SelectedValue))
  105.                     {
  106.                         regionid = new Guid(this.ddlRegion.SelectedValue);
  107.                     }
  108.                     DateTime dstart = new DateTime();
  109.                     if (!string.IsNullOrEmpty(this.txtStart.Text))
  110.                     {
  111.                         dstart = Convert.ToDateTime(this.txtStart.Text);
  112.                     }
  113.                     DateTime dend = new DateTime();
  114.                     if (!string.IsNullOrEmpty(this.txtEnd.Text))
  115.                     {
  116.                         dend = Convert.ToDateTime(this.txtEnd.Text);
  117.                     }
  118.                     //string deptsql = this.DeptSQL;
  119.                     //this.TextBox1.Text = deptsql;
  120.                     //if (this.ddlRegion.SelectedIndex == 0)
  121.                     //{
  122.                     //    //深圳市
  123.                     //    _GridSource = CalcCaseInfoByDeptReportLogic.GetDataTableByParmsBig(regionid, dstart, dend,deptsql);
  124.                     //}
  125.                     //else
  126.                     //{
  127.                     //区域
  128.                     _GridSource = CalcCaseInfoByDeptReportLogic.GetDataTableByParms(regionid, dstart, dend, this.DeptSQL);
  129.                     _GridSource = AddTableSmallSum(_GridSource);
  130.                     //}
  131.                 }
  132.                 return _GridSource;
  133.             }
  134.         }
  135.         public DataTable GridSourceSub(Guid regionid,DateTime dstart,DateTime dend,string deptsql)
  136.         {           
  137.             return CalcCaseInfoByDeptReportLogic.GetDataTableByParms(regionid, dstart, dend, deptsql);
  138.         }
  139.         /// <summary>
  140.         /// 加入小计
  141.         /// </summary>
  142.         /// <param name="dt"></param>
  143.         /// <returns></returns>
  144.         protected DataTable AddTableSmallSum(DataTable dt)
  145.         {
  146.             DataRow dr = dt.NewRow();
  147.             dr[1] = "合计";
  148.             for (int i = 2; i < dt.Columns.Count; i++)
  149.             {
  150.                 int sum = 0;
  151.                 for (int j = 0; j < dt.Rows.Count; j++)
  152.                 {
  153.                     sum = sum + int.Parse(dt.Rows[j][i].ToString());
  154.                 }
  155.                 dr[i] = sum;
  156.             }
  157.             dt.Rows.Add(dr);
  158.             return dt;
  159.         }
  160.         private void UltraWebGrid1_DemandLoad(object sender, Infragistics.WebUI.UltraWebGrid.RowEventArgs e)
  161.         {
  162.             UltraGridBand band = UltraWebGrid1.Bands[e.Row.Band.Index + 1];
  163.             if (band.Columns.Count == 0)
  164.             {
  165.                 band.Columns.Add(new UltraGridColumn());
  166.                 band.Columns.Add(new UltraGridColumn());
  167.                 band.Columns.Add(new UltraGridColumn());
  168.                 band.Columns.Add(new UltraGridColumn());
  169.                 band.Columns.Add(new UltraGridColumn());
  170.                 band.Columns.Add(new UltraGridColumn());
  171.                 band.Columns.Add(new UltraGridColumn());
  172.                 band.Columns.Add(new UltraGridColumn());
  173.                 band.Columns[0].HeaderText = "region_id";
  174.                 band.Columns[0].Hidden = true;
  175.                 band.Columns[1].HeaderText = "部门";
  176.                 band.Columns[2].HeaderText = "受理数";
  177.                 band.Columns[3].HeaderText = "立案数";
  178.                 band.Columns[4].HeaderText = "结案数";
  179.                 band.Columns[5].HeaderText = "不予立案数";
  180.                 band.Columns[6].HeaderText = "移交数";
  181.                 band.Columns[7].HeaderText = "撤销中止数";               
  182.             }
  183.             Guid regionid = new Guid(e.Row.Cells[0].Value.ToString());
  184.             DataTable dt = this.GridSourceSub(regionid,new DateTime(),new DateTime(),this.DeptSQL);
  185.             for (int i = 0; i < dt.Rows.Count; i++)
  186.             {
  187.                 e.Row.Rows.Add(new UltraGridRow());
  188.                 e.Row.Rows[i].Cells[0].Value = dt.Rows[i]["region_id"];
  189.                 e.Row.Rows[i].Cells[1].Value = dt.Rows[i]["dept_name"];
  190.                 e.Row.Rows[i].Cells[2].Value = dt.Rows[i]["acceptcount"];
  191.                 e.Row.Rows[i].Cells[3].Value = dt.Rows[i]["basiccount"];
  192.                 e.Row.Rows[i].Cells[4].Value = dt.Rows[i]["endcount"];
  193.                 e.Row.Rows[i].Cells[5].Value = dt.Rows[i]["nocreatecount"];
  194.                 e.Row.Rows[i].Cells[6].Value = dt.Rows[i]["movecount"];
  195.                 e.Row.Rows[i].Cells[7].Value = dt.Rows[i]["stopcount"];                
  196.                 e.Row.Rows[i].ShowExpand = true;
  197.             }
  198.             if (UltraWebGrid1.Bands[band.Index + 1] == null)
  199.                 UltraWebGrid1.Bands.Add(new UltraGridBand());
  200.         }
  201.         private void UltraWebGrid1_InitializeLayout(object sender, Infragistics.WebUI.UltraWebGrid.LayoutEventArgs e)
  202.         {
  203.             UltraWebGrid1.DisplayLayout.RowSelectorStyleDefault.Width = Unit.Pixel(350);
  204.         }
  205.         private void BindView()
  206.         {
  207.             UltraWebGrid1.ResetRows();
  208.             for (int i = 0; i < GridSource.Rows.Count; i++)
  209.             {
  210.                 UltraWebGrid1.Rows.Add(new UltraGridRow());
  211.                 UltraWebGrid1.Rows[i].Cells[0].Value = GridSource.Rows[i]["region_id"];
  212.                 UltraWebGrid1.Rows[i].Cells[1].Value = GridSource.Rows[i]["dept_name"];
  213.                 UltraWebGrid1.Rows[i].Cells[2].Value = GridSource.Rows[i]["acceptcount"];
  214.                 UltraWebGrid1.Rows[i].Cells[3].Value = GridSource.Rows[i]["basiccount"];
  215.                 UltraWebGrid1.Rows[i].Cells[4].Value = GridSource.Rows[i]["endcount"];
  216.                 UltraWebGrid1.Rows[i].Cells[5].Value = GridSource.Rows[i]["nocreatecount"];
  217.                 UltraWebGrid1.Rows[i].Cells[6].Value = GridSource.Rows[i]["movecount"];
  218.                 UltraWebGrid1.Rows[i].Cells[7].Value = GridSource.Rows[i]["stopcount"];               
  219.             }
  220.             UltraWebGrid1.Bands.Add(new UltraGridBand());
  221.             for (int i = 0; i < UltraWebGrid1.Rows.Count - 1; i++)
  222.             {
  223.                 UltraWebGrid1.Rows[i].ShowExpand = true;
  224.             }
  225.         }
  226.         protected void BtnToExcel_Click(object sender, EventArgs e)
  227.         {
  228.             //UltraWebGridExcelExporter export = new UltraWebGridExcelExporter("GRIDDATAOUTPUT");
  229.             //export.Export(this.UltraWebGrid1);
  230.             this.UltraWebGridExcelExporter1.WorksheetName = "GRIDDATAOUTPUT";
  231.             UltraWebGridExcelExporter1.Export(this.UltraWebGrid1);
  232.             //Dictionary<string, string> columns = new Dictionary<string, string>();
  233.             //columns.Add("region_name", "案件类别");
  234.             //columns.Add("acceptcount", "受理数");
  235.             //columns.Add("basiccount", "立案数");
  236.             //columns.Add("endcount", "结案数");
  237.             //columns.Add("nocreatecount", "不予立案数");
  238.             //columns.Add("movecount", "移交数");
  239.             //columns.Add("stopcount", "撤销中止数");
  240.             columns.Add("smallsum", "合计");
  241.             ExcelHelper.ToExcel(GridSource, "test.xls", columns);
  242.             //string filename = DateTime.Now.ToString("yyyyMMddHHmmssfff") + ".xls";
  243.             //XLSHelper.CreateFile(GridSource, columns, Server.MapPath("../xls/" + filename));
  244.             //Response.Redirect("../xls/" + filename);
  245.         }
  246.         protected void btnToOfficeExcel_Click(object sender, EventArgs e)
  247.         {
  248.             Session["datasource"] = this.GridSource;
  249.             string url = "..//../iWebOffice2006/DocumentEditOffice.aspx?FileType=.xls";// 打印excel
  250.             Response.Write("<script>window.open('" + url + "','newwindow','toolbar=no,menubar=no,scrollbars=yes, resizable=yes,location=no, status=no');</script>");
  251.         }
  252.     }
  253. }

 在后台代码中的

  1.         override protected void OnInit(EventArgs e)
  2.         {
  3.             //
  4.             // CODEGEN: This call is required by the ASP.NET Web Form Designer.
  5.             //
  6.             InitializeComponent();
  7.             base.OnInit(e);
  8.         }
  9.         /// <summary>
  10.         /// Required method for Designer support - do not modify
  11.         /// the contents of this method with the code editor.
  12.         /// </summary>
  13.         private void InitializeComponent()
  14.         {
  15.             this.UltraWebGrid1.DemandLoad += new Infragistics.WebUI.UltraWebGrid.DemandLoadEventHandler(this.UltraWebGrid1_DemandLoad);
  16.             this.UltraWebGrid1.InitializeLayout += new Infragistics.WebUI.UltraWebGrid.InitializeLayoutEventHandler(this.UltraWebGrid1_InitializeLayout);
  17.         }

是必须的.

 

 

GridSource是我们读取的数据源.

UltraWebGrid1_DemandLoad事件用于点击下级时触发的.

 

还有我的代码中还到toExcel的

也是UltraWebGridExcelExporter1 导出层级关第的.

 

 

关键点:

我的绑定数据的时候只能一个一个分开来绑定,

 

不能使用

UltraWebGrid1.DataBind();这样不能出分层按键.

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

rjzou2006

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值