找回密码
 立即注册

QQ登录

只需一步,快速开始

Richard.Ma 讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-3-20 15:04  /   查看:3482  /  回复:0
C1 ASP.NET WebForm控件提供了创建 Web 应用程序的套包,它包含了 50 多款控件。每个控件都有其内置的属性、方法和事件用于定制控件行为。同时,也支持对控件进行继承并扩展。
但是,有两个问题需要解决
   1.继承 Wijmo 控件时遇到以下错误:
“Microsoft JScript runtime error: Object doesn’t support property or method ‘objectName’.”
    错误原因是 Wijmo 控件会根据控件类名向客户端注册 js 资源,资源名称为类名的小写形式,例如控件名称为MyCustomWijmo,在客户端 js 资源名称为:mycustomwijmo。解决方法是重写事件,加入以下代码
  1. this.Page.ClientScript.RegisterStartupScript(this.GetType(), this.ID + "_script", "<script>$.fn.mycustomwijmo = $.fn.c1treeview</script>");
复制代码

  2.另一个问题是,继承 Wijmo 控件后,在提交等触发Postback的操作时,输入型控件的值会消失,
   错误的原因是Postback时,Wijmo控件会重新初始化,解决办法是继续在OnPreRender事件中加入如下的代码:
  1. this.Page.ClientScript.RegisterOnSubmitStatement(this.GetType(), this.ID, "$('#" + this.ClientID + "').wijSaveState('c1inputdate');");
复制代码

以下为继承一个C1InputText整理后的完整代码
  1. <blockquote><blockquote>    public partial class MyCustomWijmo : C1.Web.Wijmo.Controls.C1Input.C1InputText
复制代码

详情请参考附件中的示例代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

0 个回复

您需要登录后才可以回帖 登录 | 立即注册
返回顶部