1.用JavaScript应该可以实现,如果在服务器段控制,重要的是获得WebForm2对象,可以考虑在某个地方保存。不知道.net有没有提供获得服务器端对象的方法
2.在事件处理中有一个sender对象被传进来,这是触发事件的对象,可以直接拿来与需要比较的对象进行比较,如果仅仅只想比较类型,可以用sender.GetType()获得该对象的类型,用下列类似方法比较:
if( sender.GetType() == typeof(LinkButton) )
...Do something...;
2.在事件处理中有一个sender对象被传进来,这是触发事件的对象,可以直接拿来与需要比较的对象进行比较,如果仅仅只想比较类型,可以用sender.GetType()获得该对象的类型,用下列类似方法比较:
if( sender.GetType() == typeof(LinkButton) )
...Do something...;
-----它的按纽事件是对整个Toobar而言的,没有针对单个Button的事件。
timmy3310(tim) :if( sender.GetType() == typeof(LinkButton) )
...Do something...;
-----我的Toolbar里放的都是按纽,那仍然不能让我确定按的是哪个按纽呀
windfun(小宝.NET):把WebForm2的TextBox1值存放在数据库
数据库的方法实在是太不好了。如果非要存储,那应该存储至客户端的XML文件
...
//第一个Button
LinkButton lbtn = new LinkButton();
lbtn.ID = "Button1";
lbtn.CommandName = "cmdButton1";
lbtn.Text = "Button1";
lbtn.Click += new System.EventHandler(this.BtnClicked); //将Button1加入工具栏 LinkButton lbtn = new LinkButton();
lbtn.ID = "Button2";
lbtn.CommandName = "cmdButton2";
lbtn.Text = "Button2";
lbtn.Click += new System.EventHandler(this.BtnClicked); //将Button2加入工具栏
...然后在按钮事件中:
private void BtnClicked(object sender, System.EventArgs e)
{
switch(e.CommandName)
{
case "cmdButton1":
//这里是Button1的处理代码
break;
case "cmdButton2":
//这里是Button2的处理代码
break;
}
}通过Button的CommandName属性可以很方便的判断产生Command的按钮是哪一个,当然如果要获得Button的实例,可以采用Control类的FindControl方法来获得其中包含的控件,只需要传入控件的ID值,即新增时指定的Button的ID属性。
後台只能在表单提交後才能处理,不可能做到实时刷新别的页面,所以只能用JavaScript做,网上有很多这方面的资料,自己去找找吧。用数据库或是XML都是多此一举,而且得不到想要的效果。
哎,WinForm环境下的Toolbar都能够判断点击哪个Button,WebForm下咋就不行了呢。
你可以使用Panel或是其他可以包含控件的组件,by the way,在WebForm中好像不能够用WinForm里面的ToolBar啊
其实用什么东西不重要,重要的得到你想要的效果,另外,WebForm虽然已经和WinForm很相似了,但是从根本上来说二者是完全不同的,你可以去研究一下WebForm的实现方式,实际上它都是通过JavaScript结合服务器断的技术实现的,很多地方它不可能做到和WinForm完全一样的东西,但是相似的效果通过各种方法基本上都可以实现。