.net 组件问题(dll控件) 想实现如下功能:将 多个控件 如: buton ,都有不同 点击事件如何封装在一起, 生成dll文件,供别人调用是不是可以 都放在Panel 中,如何放呢?请 高手们 指教··· 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 也可以参考一下Microsoft Ajax Library客户端组件编程模型。关键字:Sys.Component, Sys.UI.Behavior, Sys.UI.Control. 楼上的可以考虑。我现在用了 System.Web.UI.WebControls.CompositeControl在 CreateChildControls 方法中 添加需要的控件及相关事件,添加上去可以调用,但各个控件的位置不能按照意愿去摆放。假如创建控件 先不加进页面,在 Render 方法中,各个控件在需要的位置进行输出,但相关事件就不知道消失了 不知道怎么加上去·· 两种方式:1.简单实现,使用用户控件方式实现,直接使用web应用程序开发,编写用户控件并把用户控件当做内嵌资源直接嵌入到系统中,然后编译成独立的dll分发出去就成2.复杂实现,使用标准自定义服务器控件方式完成,不过这种方式要求就比较高了我的建议是如果你没把握快速开发标准服务器控件,基于性价比的原因,请选择第1种方式开发。第一种方式的参考资料:Embedded UserControls: Revisitedhttp://www.codeproject.com/KB/user-controls/EmbeddedUserControl.aspx public class Class1 : CompositeControl { private Button bt1; private Label lab1; protected override void CreateChildControls() { Controls.Clear(); lab1 = new Label(); lab1.Text = "信息"; lab1.ID = "Label1"; this.Controls.Add(lab1); bt1 = new Button(); bt1.Text = "添加"; bt1.ID = "Button1"; bt1.Click += new EventHandler(bt1_Click); this.Controls.Add(bt1); base.CreateChildControls(); } void bt1_Click(object sender, EventArgs e) { //throw new NotImplementedException(); lab1.Text = "test"; } protected override void RecreateChildControls() { EnsureChildControls(); } protected override void Render(System.Web.UI.HtmlTextWriter writer) { writer.Write("<div>"); lab1.RenderControl(writer); bt1.RenderControl(writer); writer.Write("</div>"); base.Render(writer); } }在页面调用 会出现 两个 相同的BUTTON 和 Label 该怎么处理不让他重复显示? 求助啊。。不会上传到空间。。 修改CS后编译的问题 去掉窗体滚动条,并在自定义DIV中显示垂直滚动条 在DataGrid编辑模式下DropDownList联动的问题???急...30分 哪位能提供一下《应用框架的设计与实现--.NET平台》这本书的源代码? 设计时 怎么获取文件物理路径? 关于 ASP的 换行显示问题 【提问】在右键获取当前页面的URL和TITLE【在线放分】 怎样使,点击button后,打开新窗口? MVC路由的一个问题。根目录下“Admin”控制器和 Areas的名也是“admin”该如何访问根目录下的admin控制器 关于.NET中数据索引的问题 JS
我现在用了 System.Web.UI.WebControls.CompositeControl
在 CreateChildControls 方法中 添加需要的控件及相关事件,添加上去可以调用,但各个控件的位置
不能按照意愿去摆放。假如创建控件 先不加进页面,在 Render 方法中,各个控件在需要的位置进行输出,但相关事件就不知道消失了 不知道怎么加上去··
1.简单实现,使用用户控件方式实现,直接使用web应用程序开发,编写用户控件并把用户控件当做内嵌资源直接嵌入到系统中,然后编译成独立的dll分发出去就成2.复杂实现,使用标准自定义服务器控件方式完成,不过这种方式要求就比较高了我的建议是如果你没把握快速开发标准服务器控件,基于性价比的原因,请选择第1种方式开发。第一种方式的参考资料:Embedded UserControls: Revisited
http://www.codeproject.com/KB/user-controls/EmbeddedUserControl.aspx
{
private Button bt1;
private Label lab1;
protected override void CreateChildControls()
{
Controls.Clear();
lab1 = new Label();
lab1.Text = "信息";
lab1.ID = "Label1";
this.Controls.Add(lab1); bt1 = new Button();
bt1.Text = "添加";
bt1.ID = "Button1";
bt1.Click += new EventHandler(bt1_Click);
this.Controls.Add(bt1);
base.CreateChildControls();
} void bt1_Click(object sender, EventArgs e)
{
//throw new NotImplementedException();
lab1.Text = "test";
}
protected override void RecreateChildControls() { EnsureChildControls(); } protected override void Render(System.Web.UI.HtmlTextWriter writer)
{
writer.Write("<div>");
lab1.RenderControl(writer);
bt1.RenderControl(writer);
writer.Write("</div>");
base.Render(writer);
} }在页面调用 会出现 两个 相同的BUTTON 和 Label 该怎么处理不让他重复显示?