//从Color类型得到RGB类型,也可以用ColorTranslator.ToOle()方法
  public int GetRGBFromColor(Color color)
  {
    byte r = color.R;
    byte g = color.G;
    byte b = color.B;
    //转化为32bit RGB值:
    int rgb = (r & 0xff) | ((g & 0xff) << 8) | ((b & 0xff) << 16);
    return rgb;
  }

  // 注册Cell,并初始化cell属性
  private bool RegisterCell()
  {
    try
    {
      //注册Cell
      int loginresult = axCell1.Login("天畅科技", "11100101954", "7640-1017-7650-5004");
      if (loginresult == 0)
      {
        FrmTZTip.Show("错误提示", "注册Cell失败", TipType.waring);
        return false;
      }
      axCell1.LocalizeControl(0x804);
      axCell1.ShowHScroll(1, axCell1.GetCurSheet());//横向滚轮
      axCell1.ShowVScroll(1, axCell1.GetCurSheet());//纵向滚轮
      this.axCell1.SetGridCursor(0, 1);//设置鼠标样式
      axCell1.AllowCopy = false;//不允许复制
      axCell1.AllowCut = false;// 不允许剪切
      axCell1.AllowExtend = false;//不允许用鼠标拖动选中单元格的右下角进行扩展操作
      axCell1.AllowDragdrop = false;//不允许拖拽单元格
      return true;
    }
    catch
    {
      FrmTZTip.Show("错误提示", "注册Cell失败", TipType.waring);
      return false;
    }
  }

  InsertRow2方法最后一个参数用法:
  0:插入空白行(和InsertCleanRow功能一样)
  // 1:插入行,自动复制上一行的某些属性(和InsertRow功能一样),不包括单元格的合并
  // 2:插入行,自动复制上一行的某些属性,会自动独立合并startrow行上的某列(根据上一行的合并情况)
  // 3:插入行,自动添加到上一行的合并单元格中
     // >3:如3雷同...

//批量导入公式
   axCell1.SetAllFormulas(str_公式,false);

   //得到公式

   str_公式 = axCell1.GetAllFormulas();

   //是否为公式单元格

   IsFormulaCell方法

   //不显示公式编辑
        private void axCell1_AllowInputFormula(object sender, AxCELL50Lib._DCell2000Events_AllowInputFormulaEvent e)
        {
            e.approve = 0;
        }

   //放大缩小,注意最后的100一定要带上.0,也可以把数据装换成double类型
        axCell1.SetScreenScale(axCell1.GetCurSheet(), Convert.ToInt32(combBigger.SelectedItem.ToString().TrimEnd('%')) / 100.0);

    /// <summary>
        /// 插入行,并继承公式zdc,自写的一个插入行可以继承公式的方法
        /// </summary>
        /// <param name="startrow">要插入行的行号</param>
        /// <param name="count">插入几行</param>
        /// <param name="axcell">cell控件对象</param>
        public void InsertRow3(int startrow,int count,AxCELL50Lib.AxCell axcell)
        {
            axcell.InsertRow2(axcell.GetCurrentRow(), 1, axcell.GetCurSheet(), 2);

//遍历插入行上面一行的所有单元格,如果为公式行,选中这一个单元格和下面的一个(SelectRange),然后再用FormulaFillSerial()方法,用FormulaFillSerial方法能按最上面单元格的公式继承
            for (int j = 1; j <= axcell.GetCols(axcell.GetCurSheet()); j++)
            {
                if (axcell.IsFormulaCell(j, startrow - 1, axcell.GetCurSheet()) > 0)
                {
                    axcell.SelectRange(j, startrow - 1, j, startrow);
                    axcell.FormulaFillSerial();
                }
            }
        }

   //帮助文档上说的设置单元格为下拉窗体xml数据源的,试了用第一种方法直接读取xml地址的不行,用第二种

   XmlDocument xmldoc = new XmlDocument();
            xmldoc.Load(@"E:\测试\ReportTest\ReportTest\test.xml");
           
            string xml= xmldoc.OuterXml;
            int n = axCell1.RSDefXmlSet("setname", xml, 2);
            axCell1.SetDropwndCell(9,4,axCell1.GetCurSheet(),n,2,2);

   CalcNumFormula方法,用于手动验证公式时,

   如:CalcNumFormula("CurCell()>I8",Convert.ToInt32(col) - 64, row, axCell1.GetCurSheet(), ref type),后面的列、行、表,是用于如果出现CurCell()等当前行,当前列,当前单元格时,定位这个当前参数用的

单元格添加下拉树形控件(SetDroptreeCell方法)

xml格式如下:

<?xml version="1.0" encoding="utf-8"?>
<XML>
  <CONFIG>
    <name name="SORT" value="sot"/>
    <name name="CHANGE" value="chg"/>
    <name name ="DISPLAY" value="hyname"/>
    <name name="RETURN" value="rtn"/>
    <name name="DEFAULTHEIGHT" value="0"/>
    <name name="DEFAULTWIDHT" value="0"/>
    <name name="KEYFIELD" value="key"/>
  </CONFIG>
  <VALUE>
    <tree0 hyname="农副食品加工业" rtn="" chg="cgh3" sot="a" key="ddd">
      <subtree hyname="谷物磨制" rtn="轻工" chg="cgh3" sot="a" key="ddd" />
      <subtree hyname="饲料加工" rtn="轻工" chg="cgh3" sot="a" key="ddd" />
      <subtree hyname="植物油加工" rtn="轻工" chg="cgh3" sot="a" key="ddd" />
    </tree0>
    <tree4 hyname="食品制造业" rtn="" chg="cgh3" sot="a" key="ddd">
      <subtree hyname="焙烤食品制造" rtn="轻工" chg="cgh3" sot="a" key="ddd" />
      <subtree hyname="糖果、巧克力及蜜饯制造" rtn="轻工" chg="cgh3" sot="a" key="ddd" />
      <subtree hyname="方便食品制造" rtn="轻工" chg="cgh3" sot="a" key="ddd" />
      <subtree hyname="乳制品制造" rtn="轻工" chg="cgh3" sot="a" key="ddd" />
    </tree4>
  </VALUE>
</XML>

axCell1.SetDroptreeCell(2, 19, axCell1.GetSheetIndex("SB10401_003_1"), Str, -1, -1, 1);

效果如下:

用友华表Cell一些用法小结(cs.net版本)的更多相关文章

  1. 关于使用用友华表Cell控件按需打印行的方法

    分享下只需一个cll文件按需打印行的觉得最好的方式:1.cell文件要打印行的地方最好不要全删了,留一行,设置好单元格样式(字体.对齐方式.折行自适应等),后面会省一些代码: 2.使用CopyRang ...

  2. 1:CSS中一些@规则的用法小结 2: @media用法详解

    第一篇文章:@用法小结 第二篇文章:@media用法 第一篇文章:@用法小结 这篇文章主要介绍了CSS中一些@规则的用法小结,是CSS入门学习中的基础知识,需要的朋友可以参考下     at-rule ...

  3. JList用法小结

    JList用法小结 分类: JAVA技术2007-08-11 01:02 18485人阅读 评论(11) 收藏 举报 stringvectorclassjavaactionobject         ...

  4. 转载:Hadoop排序工具用法小结

    本文转载自Silhouette的文章,原文地址:http://www.dreamingfish123.info/?p=1102 Hadoop排序工具用法小结 发表于 2014 年 8 月 25 日 由 ...

  5. [No000010]Ruby 中一些百分号(%)的用法小结

    #Ruby 中一些百分号(%)的用法小结 #这篇文章主要介绍了Ruby 中一些百分号(%)的用法小结,需要的朋友可以参考下 what_frank_said = "Hello!"#% ...

  6. C++ typedef用法小结 (※不能不看※)

    C++ typedef用法小结 (※不能不看※) 第一.四个用途 用途一: 定义一种类型的别名,而不只是简单的宏替换.可以用作同时声明指针型的多个对象.比如:char* pa, pb; // 这多数不 ...

  7. 函数fgets和fputs、fread和fwrite、fscanf和fprintf用法小结 (转)

    函数fgets和fputs.fread和fwrite.fscanf和fprintf用法小结 字符串读写函数fgets和fputs 一.读字符串函数fgets函数的功能是从指定的文件中读一个字符串到字符 ...

  8. 英语语法最终珍藏版笔记- 21it 用法小结

    it 用法小结 it 在英语中的意思较多,用法较广,现总结如下. 一.it作句子的真正主语 1.it 指前面已经提到过的人或事物,有时指心目中的或成为问题的人或事物,作真正主语. 例如: What’s ...

  9. [转]ssh常用用法小结

    ssh常用用法小结 1.连接到远程主机: 命令格式 : ssh name@remoteserver 或者 ssh remoteserver -l name 说明:以上两种方式都可以远程登录到远程主机, ...

随机推荐

  1. 转载:GridControl使用技巧

    一.如何解决单击记录整行选中的问题 View->OptionsBehavior->EditorShowMode 设置为:Click 二.如何新增一条记录 (1).gridView.AddN ...

  2. 【转】Unity中的协同程序-使用Promise进行封装(一)

    原文:http://gad.qq.com/program/translateview/7170767 译者:陈敬凤(nunu)    审校:王磊(未来的未来) 每个Unity的开发者应该都对协同程序非 ...

  3. 相识从C语言开始

    大家好,我是你们这学期C语言的助教吴科桥(女O(∩_∩)O),非常开心能在你们美好的大学这站与你们相遇,希望可以为你们学习C语言略尽绵薄之力. 开学第一周: 1. 希望每个同学都可以有自己的博客,我会 ...

  4. 【Android测试】【第十三节】Uiautomator——如何组织好你的测试代码(项目实战)

    ◆版权声明:本文出自胖喵~的博客,转载必须注明出处. 转载请注明出处:http://www.cnblogs.com/by-dream/p/4996000.html 前言 前面我们已经了解Uiautom ...

  5. C#编程之委托与事件四(二)【转】

    C#编程之委托与事件(二)       我在上一篇文章(C#编程之委托与事件(一) )中通过示例结合的方法介绍了委托,在本文中,我同样以代码示例的方式来介绍C#里的事件机制. 二.事件   1.了解概 ...

  6. webstorm svn 报错

    webstorm    svn 报错Cannot run program "svn": CreateProcess error=2, The system cannot find ...

  7. 白话学习MVC(七)Action的执行一

    一.概述 在此系列开篇的时候介绍了MVC的生命周期 , 对于请求的处理,都是将相应的类的方法注册到HttpApplication事件中,通过事件的依次执行从而完成对请求的处理.对于MVC来说,请求是先 ...

  8. storm kafka整合

    public class KafkaTopo { public static void main(String[] args) { String zkRoot = "/kafka-storm ...

  9. SQLite的使用--SQLite语句

    一.SQLite的介绍   1.为什么要存储数据?        1.1 手机数据大多都是从网络加载的,不存储,每次滚动界面都要从新发送网络请求加载数据,浪费流量      1.2 当用户没网的时候, ...

  10. AMQP

    AMQP,即Advanced Message Queuing Protocol,一个提供统一消息服务的应用层标准高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计.基于此协议的客户端 ...