Stimulsoft.Report.web viewer控件添加按钮

当你购买了带源码的时候,你可以对源码进行修改以达到自己想要的效果,比较这里讲到的,向viewer控件工具栏添加按钮。

通过源码目录可以看出我们需要修改的有两部分代码

红色方块圈中的部分,【StiWebViewer】这个就是控件代码,【Toolbar】这个是控件按钮

我们这里添加一个按钮(StiShowLogoToolButton)来看看

1、在Toolbar文件夹下添加个类 StiShowLogoToolButton,

这个类的代码其实很简单,你可以参考其他button按钮的代码

using Stimulsoft.Base.Localization;

namespace Stimulsoft.Report.Web
{
internal sealed class StiShowLogoToolButton : StiToolButton
{
public StiShowLogoToolButton(StiWebViewer viewer)
: base(viewer, viewer.GetLocalization("A_WebViewer", "Show_HideLogo"), "Show_HideLogo")
{
this.ID = viewer.ClientID + "Show_HideLogo";
this.ShowCaption = true;
this.Enabled = true;
if (viewer.IsAjax)
{
string callback = viewer.Page.ClientScript.GetCallbackEventReference(viewer, "GenerateParameters(‘" + viewer.ClientID + "‘,‘Show_HideLogo‘)", "CallbackFunction", "null");

this.ClickEvent = "if (ToolButton_OnClick(this, ‘" + viewer.ClientID + "‘)) " + callback + ";";
//this.ClickEvent = "return false;";
}
}

}
}

当然这个按钮也是需要个图片的,在Images里面放个内嵌的图片Show_HideLogo.gif

2、想viewer添加控制属性,也就是是否显示按钮的属性

 /// <summary>
/// 獲取或設置一個值用於表示是否顯示報表LOGO按鈕
/// </summary>
[DefaultValue(true)]
[Category("Other")]
[Description("獲取或設置一個值用於表示是否顯示報表LOGO按鈕")]
public bool ShowLogoButton
{
get
{

object showLogoButton = this.ViewState["ShowLogoButton"];
return showLogoButton is bool ? (bool)showLogoButton : true;
}
set
{
this.ViewState["ShowLogoButton"] = value;
}
}

3、StiToolBar.cs里开始添加按钮上来

写个方法用来添加按钮

  private void AddShowLogoButton()
{
showlogoButton = new StiShowLogoToolButton(viewer);
if (viewer.ShowLogoButton) AddControl(showlogoButton);
}

然后在CreateChildControls()方法里调用添加按钮的方法AddShowLogoButton()

4、至于怎么判断你点击了按钮呢?别急往下看

在StiWebViewer里面找到这个方法 public void
RaiseCallbackEvent(string eventArg)

然后进行判断

if (eventArg.StartsWith("Show_HideLogo",
StringComparison.InvariantCulture))

这样就可以自己写逻辑进行处理了

效果就是这样了

时间: 2024-10-12 03:35:13

Stimulsoft.Report.web viewer控件添加按钮的相关文章

在网页中编辑报表的报表设计器Stimulsoft Reports Designer.Web报表控件

Stimulsoft Reports Designer.Web报表控件是一款网页报表设计器.您想在网页中编辑您的报表吗?现在是可能的! Stimulsoft Reports Designer.Web -是第一款使您可以完全在网页中编辑报表的报表设计器.在您的客户端机器里不需要安装.Net框架.ActiveX控件或其他特殊的插件.您只需要一个Web浏览器. Stimulsoft Reports Designer.Web是新式和便捷的接口并且功能丰富以及工作快速. 操作简单将报表编辑的支持添加到您的

为jEasyUi的日期控件添加一个“清空”按钮----通过修改1.4的easyui.min.js

为 jQuery EasyUI 1.4 的datebox或datetimebox添加一个清空按钮 使用场景:为用户指定了日期的格式,且日期可以为空 修改语言包easyui-lang-zh_CN.js 在if ($.fn.datebox){ 的下一行添加 (41或42行) $.fn.datebox.defaults.cleanText = '清空'; 在if ($.fn.datetimebox && $.fn.datebox){  $.extend($.fn.datetimebox.defa

[转]Oracle分页之二:自定义web分页控件的封装

本文转自:http://www.cnblogs.com/scy251147/archive/2011/04/16/2018326.html 上节中,讲述的就是Oracle存储过程分页的使用方式,但是如果大量的页面要使用这个分页存储过程,如果利用上节的方式,势必要书写大量的代码.如何才能够少些代码书写量呢?当然了,利用自定义web控件进行一下封装,也许是一个好方法,但是如何进行封装呢? 首先,就是在项目中添加一个“Web 用户控件“的页面,我们定义为:MyPagination.ascx 然后,就是

Web端控件,页面传值

一.记忆Web端控件需要配合HTML 中的Form表单元素 Label - 在HTML中被编译成<span> Literal - 在HTML中被编译成空 文本类 文本框      <input type="text">                        TextBox 密码框      <input type="password">                 TextBox 属性TextMode="pa

(转载)VS2010/MFC编程入门之二十二(常用控件:按钮控件Button、Radio Button和Check Box)

因为私人问题,鸡啄米暂停更新了几天,首先向关注鸡啄米动态的朋友说一声抱歉. 言归正传,鸡啄米上一节中讲了编辑框的用法,本节继续讲解常用控件--按钮控件的使用. 按钮控件简介 按钮控件包括命令按钮(Button).单选按钮(Radio Button)和复选框(Check Box)等.命令按钮就是我们前面多次提到的狭义的按钮控件,用来响应用户的鼠标单击操作,进行相应的处理,它可以显示文本也可以嵌入位图.单选按钮使用时,一般是多个组成一组,组中每个单选按钮的选中状态具有互斥关系,即同组的单选按钮只能有

c#给用户控件添加事件处理程序

1.首先在usercontrol后台添加如下代码: public partial class MyControl: UserControl { //添加事件代理       public event EventHandler AX; //在需要响应的事件中添加 private void MyControl_MouseClick(object sender, MouseEventArgs e)        {            if (AX != null)            {    

鸡啄米MFC教程笔记之七:对话框:为控件添加消息处理函数

MFC为对话框和控件等定义了诸多消息,我们对它们操作时会触发消息,这些消息最终由消息处理函数处理.比如我们点击按钮时就会产生BN_CLICKED消息,修改编辑框内容时会产生EN_CHANGE消息等.一般为了让某种操作达到效果,我们只需要实现某个消息的消息处理函数. 一.添加消息处理函数 鸡啄米仍以前面的加法计算器的程序为例,说明怎样为“计算”按钮控件添加消息处理函数.添加方法列出4种: 1.使用Class Wizard添加消息处理函数 用过的VC++6.0的朋友应该对Class Wizard很熟

GTK常用控件之按钮( GtkButton )

按钮在GUI里应用最为广泛,我们几乎能在所有的界面中看到按钮. 空按钮的创建(按钮上没有任何内容): GtkWidget *gtk_button_new(void); 返回值:按钮指针 创建带文本内容的按钮: GtkWidget *gtk_button_new_with_label (const gchar *label); label:文本内容 返回值:按钮指针 设置按钮的文本内容: void gtk_button_set_label(GtkButton *button, const gcha

Silverlight项目笔记5:Oracle归档模式引起的异常&amp;&amp;表格控件绑定按钮

两个问题: (1)Oracle无法连接正常使用,原因是归档日志满了引起异常,最后选择删除归档日志恢复正常. (2)使用silverlight自带的表格绑定按钮竟然无法使用,通过变通绑定数据源集合,把按钮操作作为数据源集合一部分,重新绑定解决. 一.Oracle归档模式产生日志文件引起数据库异常 连接数据库失败,提示监听错误,各种检查监听配置文件,删除再添加监听,无果. sqlplus下重启数据库数据库依然无果,期间碰到多个错误提示: ORA-01034: ORACLE not available